- 배열 (Arrays): 순차적으로 데이터를 저장하는 자료구조입니다. ☑️
- 리스트 (Lists): 동적으로 크기가 조정될 수 있는 자료구조입니다.
- 큐 (Queues): FIFO(First-In-First-Out) 방식으로 데이터를 저장하는 자료구조입니다.
- 스택 (Stacks): LIFO(Last-In-First-Out) 방식으로 데이터를 저장하는 자료구조입니다.
- 맵 (Maps): 키-값 쌍으로 데이터를 저장하는 자료구조입니다.
- 집합 (Sets): 중복되지 않는 데이터를 저장하는 자료구조입니다.
- 트리 (Trees): 계층적인 데이터를 저장하는 자료구조입니다.
- 그래프 (Graphs): 노드와 엣지로 이루어진 자료구조입니다.
✔️ 클래스와 객체 (Classes and Objects): 객체 지향 프로그래밍의 기본이 되는 개념으로, 클래스는 객체를 만들기 위한 틀을 제공합니다.
✔️ 객체지향 프로그래밍 (객체지향 프로그래밍의 기본이 되는 개념으로, 클래스는 객체를 만들기 위한 틀을 제공합니다.
✔️ 재귀(Recursion)는 함수가 자기 자신을 호출하여 문제를 해결하는 프로그래밍 기법입니다.
✔️ 오버로딩(OverLoading) : 같은 일을 하지만 매개변수를 달리해야 하는 경우 이름은 같고 메개변수를 다르게 하여 오버로딩을 구현합니다.
✔️ 상속 (Inheritance): 부모 클래스의 특성과 동작을 자식 클래스가 상속받는 것을 의미합니다.
✔️ super 와 this
- super 는 부모 클래스의 인스턴스를 가르킵니다. 주로 자식 클래스에서 부모 클래스의 멤버 변수나 메서드를 참조할 떄 사용합니다.
- 예를 들어 super.x 는 부모 클래스의 x 멤버 변수를 가르킵니다.
- 또한 자식 클래스에서 부모 클래스의 생성자를 호출할 때 사용합니다.
- this 는 현재 클래스의 인스턴스를 가리킵니다.
- 예를 들어 this.x는 현재 클래스에서 정의된 멤버변수 x의 값을 가져옵니다.
인터페이스 (Interfaces): 클래스가 가져야 할 메소드의 명세를 정의하는 추상 형식입니다.