[생성자란?] 객체가 생성될 때 호출되며, 객체를 초기화 해주는 역할을 합니다. 생성자의 이름은 클래스의 이름과 같아야 하고, 리턴 값이 없습니다. 생성자도 오버로딩이 가능하므로 하나의 클래스에 여러개의 생성자가 존재할 수 있습니다. 객체를 만들때 인스턴스마다 다른 값을 가져야 한다면 생성자를 통해서 필드를 초기화 할 수 있습니다. 예를 들어 만들어지는 자...
[제네릭 이란?] 다양한 타입의 객체들을 다루는 메서드나 컬렉션 클래스에 컴파일 시의 타입체크를 해주는 기능입니다. 객체의 타입을 컴파일 시에 체크하기 때문에 객체의 타입 안정성을 높이고 형변환의 번거로움이 줄어듭니다. 제네릭은 클래스 또는 메서드에 사용 할 수 있습니다. 클래스 이름 뒤에 문법 안에 들어가야 할 타입 변수를 지정합니다. > ex) 제...
[Optional 이란?] Optional은 제네릭 클래스로 T 타입의 객체를 감싸는 래퍼 클래스 입니다(null이 올 수 있는 값을 감싸는 래퍼 클래스). 그래서 Optional 타입의 객체에는 모든 타입의 참조변수를 담을 수 있습니다. -> 이처럼 객체에 담아서 반

[JVM 이란 무엇인가?] JVM은 Java Virtual Machine으로 자바를 실행하기 위한 가상의 기계(컴퓨터)입니다. Java는 OS에 종속되지 않는다는 특징이 있습니다. 때문에 OS 위에서 Java를 실행시킬 무언가가 필요했기에 JVM이 등장하게 되었습니다.