객체 지향 언어로 개발된 프로그래밍 언어자바 가상 머신(JVM)을 사용하기 때문에 운영체제와 독립적으로 동작 \-> 이식성👍가비지 컬렉터를 통한 자동 메모리 관리 \-> 안정성👍 연산자 오버로딩을 금지하고 제네릭 도입 \-> 코드의 가독성👍 실행 할 때 JVM을
스택 기반의 자바 가상 머신자바 애플리케이션을 클래스 로더를 통해 읽어 들여 자바 API와 함께 실행하는 것Garbage Collection 수행자바 컴파일러 javac가 소스코드를 읽어들여 JVM이 이해할 수 있는 바이트코드(.class)로 변환한다.Class Loa
데이터를 효율적으로 저장하는 자료구조들의 집합크게 List, Set, Map으로 나뉜다.각 자료구조들의 클래스는 제네릭으로 표현됨순서가 있는 데이터의 집합으로, 중복이 허용 된다.인덱스로 원소를 관리하며 배열과 유사한 리스트용량이 꽉 찼을 경우 더 큰 용량의 배열을 새
String, StringBuffer, StringBuilder 셋 다 문자열을 다루는 클래스들이다.StringBuffer/StringBuilder와 다르게 불변하는 특징을 가진다.String으로 선언된 문자열을 수정할 경우 기존 값을 버리고 새로운 String 인스턴
데이터의 타입을 일반화하는 것을 말한다.클래스나 메소드에서 사용할 내부 데이터 타입을 컴파일 시에 미리 지정한다.클래스나 메소드 내부에서 사용되는 객체의 타입 안정성을 높일 수 있다.반환값에 대한 타입 변환 및 타입 검사에 들어가는 노력을 줄일 수 있다.여러 데이터 타
Java에서 다형성을 보장하는 대표적인 기능들하나의 클래스 혹은 함수가 다양한 방식으로 동작프로그래밍의 효율성을 높여줌같은 이름의 method를 매개변수를 다르게 하여 여러개 만드는 것컴파일 시에 같은 이름의 method 중 호출되는 method를 결정하는 정적 바인딩
Java의 기본 타입에 해당하는 데이터를 객체로 포장해주는 클래스기본 타입 : byte, short, int, long, float, double, char, booleanBigInteger, BigDecimal도 Wrapper Class에 포함기본 type -> Wr
Java에서 String 객체를 생성하는 방법에는 두 가지가 있다.이 두 가지의 방법은 메모리 생성에서 차이가 있다.위 코드의 str1과 str2(literal)의 경우 Heap의 String Constant Pool에 할당이 되고, str3(new)의 경우 Heap
상속을 통해 자손 클래스에서 메소드를 완성하도록 유도하는 클래스, 상속을 강제여러 클래스의 공통점을 찾아 추상화하기 위한 목적각 메소드와 내용이 추상적이기 때문에 객체를 생성할 수 없음공통된 필드와 메소드를 통일유지보수성을 높이고 통일성을 유지 실체클래스 구현시