728x90
🗂️객체지향 클래스 개념
🖼️클래스 다이어그램
위의 클래스 다이어그램을 아래의 자바 코드로 변환할 수 있다.
abstract class SavingAccount{
protected int period;
protected double rate;
protected double money;
public abstract double calcInterest();
}
🪧클래스 다이어그램 기호
(+) 기호 ⇒ public
(-) 기호 ⇒ private
(#) 기호 ⇒ protected
콜론 앞에는 필드/메소드의 이름, 콜론 뒤에는 필드/메소드의 타입/반환형
✋접근 제어자
접근 제한자라고도 하며 멤버 또는 클래스에 사용
💡 해당하는 멤버 또는 클래스를 외부에서 접근하지 못하도록 제한하는 역할을 한다
클래스 제한, 필드와 메소드 제한, 생성자 제한
접근 제어자 종류
접근 제한 | 적용 대상 | 접근할 수 있는 영역 |
---|---|---|
public | 클래스, 필드, 생성자, 메소드 | 클래스 내부, 동일 패키지, 자손 클래스, 이외 영역 |
protected | 필드, 생성자, 메소드 | 클래스 내부, 동일 패키지, 자손 클래스 |
default | 클래스, 필드, 생성자, 메소드 | 클래스 내부, 동일 패키지 |
private | 필드, 생성자, 메소드 | 클래스 내부 |
🗯️추상 클래스
추상 메소드는 선언만 해주면 됨
추상 클래스를 상속받은 자식 클래스는 반드시 추상 메소드를 오버라이딩 해야 한다
객체로 생성 불가
🚕오버로딩 vs 오버라이딩
오버로딩
💡 메소드명이 같고, 매개변수의 개수나 타입이 달라야 한다
주의 : 매개변수의 갯수와 타입이 모두 같고 이름만 다른 경우는 오버로딩이 성립하지 않는다
오버라이딩
💡 부모 클래스로부터 상속받은 메소드를 자식 클래스에서 재정의 하는 것
메소드명, 매개변수, 리턴 값이 모두 같아야 한다
728x90
'TOPCIT' 카테고리의 다른 글
컴퓨터구조 - 데스크톱 가상화 (0) | 2024.11.05 |
---|---|
컴퓨터구조 - 컴퓨터 구성요소, 플린분류 (0) | 2024.08.25 |
컴퓨터구조- CISC와 RISC (0) | 2024.08.25 |
컴퓨터구조 - 컴파일러 언어와 인터프리터 언어 (0) | 2024.08.25 |
TOPCIT 2023 시상식 후기 (7) | 2024.08.25 |