자바를 돌리기 위해서는 설정 > 환경변수 에 jdk의 경로를 지정해주곤 한다.왜 하는건지 모르고 등록을 하였는데, 환경변수에 경로를 등록해줌으로써 jdk를 전역에서 써주기 위해 PATH 에 등록한다고 한다.컴파일을 하는 이유를 알아두는게 좋아보인다.자바는 컴파일과 동시
String s1 = new String("Hello");위에서 s1을 '참조(참조 변수)' 라고 부른다.아니다. 둘은 다르게 생각해야 한다.참조는 별명 이라 생각하면 된다.포인터는 주소를 가지고 있을 공간이 필요하지만, 참조는 별명일 뿐이지, 주소를 가지고 있을 공간
개체와 객체는 다른 것이다. 객체 메소드 static을 쓰면 클래스를 통해서 사용되는 함수 (스태틱 메소드) static을 안쓰면 객체를 통해서 사용되는 함수 (인스턴스 메소드) exam.print()로 메소드를 호출하게 되면 exam이라는 객체가 print로 넘
Has a 상속 (포함 개념 / 컴퓨터 - RAM, DISK)Is a 상속 (일반적 개념, 구체적 개념)클래스 내부의 변수 값을 초기에 지정해주고 싶을 때 init() 이라는 임의의 함수를 만들어해줄 수도 있을텐데, 이러한 함수를 초기화 함수라고 하지는 않는다.초기화
들어가기에 앞서 모듈과 모듈화에 대해 먼저 알아보자모듈화란 소프트웨어를 기능별로 나누는 것을 의미한다각 기능별로 나누어진 결과를 모듈이라고 한다좋은 모듈화는 목적에 맞는 기능만으로 모듈을 나누어 다른 모듈과 적게 연관되는 것을 의미한다 ( = 독립성이 강한 모듈 )이러
Q.컬렉션 프레임워크에 대해서 설명해주세요 Java Collections FrameWork의 의미를 하나씩 살펴보자면 Java = 자바 Collections = 일정한 부류의 것을 수집하여 한 공간에 모아 놓음 FrameWork = 뼈대가 되는 기본 구조 -> 일정
Generic은 데이터 형식에 의존하지 않고, 하나의 값이 여러 다른 데이터 타입들을 가질 수 있도록 하는 방법이다. -> 다형성객체의 타입을 컴파일 시에 체크해줌으로써 의도하지 않은 타입의 객체가 저장되는 것을 막는다.\-> 객체의 타입 안정성을 높여준다간단히 Arr
JVM이란 Java Virtual Machine의 약자로, 자바 가상머신이다 자바가 OS에 구애 받지 않고 프로그램을 실행할 수 있도록 도와준다 Java 이전의 C언어와 C++ 언어는 컴파일 된 파일이 OS 별로 호환되지 않았다 이를 해결하기 위해 자바는 컴파일 시
자바 컴파일러는 메소드 이름, 매개변수 수, 매개변수 타입의 순서를 이용해 메소드를 구분한다. 때문에 이들을 메소드의 시그니처 라고 한다. (리턴 타입은 상관없음)같은 이름의 메소드를 중복하여 정의하는 것을 의미, 서로 다른 시그니처를 가진 여러 메소드를 정의하는 것.
두 객체가 완전히 같은 경우를 의미, 주소 값이 같음Stack 에 있는 B와 C는 같은 객체를 참조 즉 B와 C는 동일하다고 말할 수 있음해당 변수가 동일한지는 == 을 통해서 확인할 수 있다.추가로 Primitive 타입은 객체가 아니여서 주소가 없음. == 연산자를
cpu 자원을 사용하여 코드를 실행하는 하나의 단위모든 자바 애플리케이션은 메인 스레드가 main() 메소드를 실행하면서 시작되고, main 메소드에서 마지막 코드를 실행하거나 return 을 하게 되면 종료된다.필요에 따라 작업 스레드를 만들어 병렬로 코드를 실행할
자바는 stack, heap, static 영역으로 이루어져 있음. 자바의 스레드끼리는 static 하고 heap 영역을 공유하기 때문에, 공유 자원에 대한 동기화 문제를 신경써야 한다.동기화 문제를 해결하는 방법 중 하나인 Synchronized 키워드sychroni
String 클래스는 불변 객체String 클래스의 문자열을 저장하는 변수가 final 키워드로 되어 있음따라서 한 번 할당한 문자열은 변경이 불가하고 문자열을 새로 더한다면 새로운 객체가 생성되어 재할당된다3가지 x 에는 모두 다른 객체가 들어가 있다. 1번에서 할당
컬렉션의 저장 요소를 하나씩 참조해서 람다식으로 참조할 수 있는 반복자기존에는 많은 양의 데이터를 다룰 때 배열이나 컬렉션에 데이터를 담고 for문과 Iterator를 돌림but, 재사용성이 떨어지고 코드 길어짐람다식으로 처리원본의 데이터를 변경하지 않는다.원본의 데이
어노테이션은 메타 데이터로서.어노테이션 자체는 어노테이션이 붙은 코드 동작에 영향을 미치지 않음작성한 코드에 대해 추가적인 정보를 제공하면서, 컴파일, 런타임 시점에 해당 코드에 대한 추가적인 처리를 해줌컴파일러에게 필요한 정보 제공컴파일/배포 시에 필요한 처리 기능런
가비지 컬랙터는 무엇이고 작동원리는?C언어는 메모리 할당과 해제를 직접 해줘야 했는데, 해지를 까먹으면 유효하지 않은 메모리가 점점 쌓이게 된다garbage collectionJVM - Execution Engine에 Garbage Collector가 존재더 이상 참조