1. 주요 특징
1. 플랫폼 독립
2. 객체 지향 언어
- 캡슐화, 상속, 다형성 등
- 객체 = 변수 + 메소드
3. 단순한 구조 (C, C++과 비교)
- 없는 것: 포인터 연산, Struct문, Typedef문, 전처리(선행처리)
- 제공하는 것: 예외처리
4. 메모리 자동 관리
- 쓰레기 수집기
5. 네트워크와 분산처리
- TCP/IP 네트워킹 기능 포함
- 프로토콜에 대한 라이브러리 제공
6. 멀티메소드 지원
7. 신뢰성, 안정성
- 엄격한 자료형 검사
2. 기본 자료형
정수 | byte | 1 |
short | 2 | |
int | 4 | |
long | 8 | |
실수 | float | 4 |
double | 8 | |
논리 | boolean | 1 |
문자 | char | 2 |
3. 예약어
1. 제어문
- if, switch, case, for, while, do, continue, break, return
2. 예외 처리
- try, catch, finally, throws
3. 제어자
- abstract, final, private, protected, public, static
- final: 변경 금지
- private: 해당 클래스 내에서만 제어 가능
- protected: 같은 패키지 내에서만 제어 가능
4. 객체지향
- class, extends, implements, import, instanceof, interface, new, null, package, super, this
- extends: 클래스 상속할 때 사용
- implements: 인터페이스 메소드 구현할 때
- import: 패키지나 클래스 사용한다는 뜻
- new: 새로운 객체나 배열 선언
- null: 객체 참조하지 않음
- super: 상위 클래스를 참조
- this: 자기 자신을 참조
4. 클래스 (Class)
: 데이터와 처리동작을 하나로 모은 것
1. 멤버
- 필드: 데이터
- 메소드: 처리동작
2. 생성자
: 클래스와 같은 이름의 메소드
- 반환 자료형 없음
- 객체 생성 시, 멤버변수 초기화 등의 용도로 사용됨
- 매개변수가 있을 경우, 직접 호출해야 함
3. 접근 지정자 (access modifier)
클래스 내부 | 같은 패키지 내 클래스 | 다른 패키지 내 자식 클래스 | 모든 클래스 | |
private | O | X | X | X |
default | O | O | X | X |
protected | O | O | O | X |
public | O | O | O | O |
4. 기타 지정자
1) final
- 클래스, 멤버변수, 메소드는 변경 불가
- 클래스: 자식 클래스 생성 불가
- 메소드: 오버라이딩 불가
- 멤버변수: 상수
2) abstract
(1) 추상 클래스
- 객체 생성 불가, 호출 방법만 정의
- 상속받은 추상 메소드는 오버라이딩
(2) 추상 메소드
- 내부 구현부 없음
3) static
- 모든 객체가 공유
5. 상속 (inheritance)
: 다른 클래스 멤버를 계승하는 기능
1. 슈퍼 클래스 (= 부모 클래스)
- 물려준 클래스, 하나
2. 서브 클래스 (= 자식 클래스)
- 슈퍼 클래스에게 물려받아 만든 클래스
- extends 사용
6. 다형성 (polymorphism)
1. 메소드 오버라이딩 (overriding)
- 상속된 메소드와 동일한 이름, 동일한 인수를 갖는 메소드 정의
- 반환값의 형도 동일
2. 메소드 오버로딩 (overloading)
- 하나의 클래스 내에 인수 개수나 형이 다른 동일한 이름의 메소드 여러 개 정의
- 메소드 호출 시, 주어진 인수와 수와 형이 일치하는 메소드가 호출
7. 인터페이스 (interface)
: 상수와 추상메소드로 구성
- 다중상속 가능
- 클래스의 공통된 부분 정의, 재사용성과 생산성 향상, 일관성 있는 클래스 설계 가능
1. 상속
- 자식 클래스에서 인터페이스를 상속하려면 implements 키워드 사용
- 인터페이스에서 선언한 추상 메소드를 모두 구현해야 함
- 이용 시, 클래스 다중상속 우회적으로 지원
8. 예외 처리
1. 예외 (exception)
: 프로그램 자체적으로 처리할 수 있는 오류
2. try-catch문
1) try 블록
- 예외가 발생할 수 있는 문장 기술
- 발생 가능한 예외를 catch블록에서 처리
2) finally 블록
- 예외 발생 여부와 관계없음
- 반드시 처리해야 할 문장 기술
3. throws문
- 메소드 안에서 발생한 예외를 메소드를 호출한 곳으로 보냄
'공부 > etc.' 카테고리의 다른 글
[국어 단어] 고유어 (ㄴ) (0) | 2023.06.14 |
---|---|
[국어 단어] 고유어 (ㄱ) (1) | 2023.06.14 |
[국어] 시간과 관련된 단어 (2) | 2023.06.11 |
[국어] 날씨와 관련된 단어 (1) | 2023.06.11 |
[국어] 사람과 관련된 단어 (0) | 2023.06.11 |
[컴퓨터] 4차 산업혁명 기술 키워드 (1) | 2023.06.07 |
[컴퓨터] C언어 키워드 (1) | 2023.06.07 |
[컴퓨터] 프로그래밍과 언어 번역 키워드 (0) | 2023.06.07 |
댓글