Spring과 진짜 초면인 우리
1️⃣ 캡슐화 2️⃣추상화 3️⃣ 다형성 4️⃣ 상속성
4️⃣ 상속성

상속성이란?
- 기존의 클래스를 변경하여 새로운 클래스를 만들 때, 기존 클래스의 속성과 메서드를 상속받아 사용하는 개념
- 즉, 상속을 통해 코드의 재사용성을 높이고, 유지보수와 확장성을 개선할 수 있다.
'Language' 클래스를 추상 클래스로 선언하고,
'English', 'Chinese', 'Japanese' 클래스에서 'Language' 클래스를 상속받아 각각의 언어로 greeting을 하는 간단 예시 코드
'Main' 클래스에서는 'Language' 타입의 'language' 변수를 선언하고, 'English', 'Chinese', 'Japanese' 클래스를 객체 생성하여 'language' 변수를 통해 각 객체의 'greeting' 메소드를 호출하는데, 이를 통해 상속성의 개념을 살펴볼 수 있다.
// Language 클래스 선언 (추상 클래스)
abstract class Language {
// 추상 메소드
public abstract void greeting();
}
// English 클래스 선언 (Language 클래스를 상속)
class English extends Language {
// greeting 메소드 오버라이드
public void greeting() {
System.out.println("Hello, World!");
}
}
// Chinese 클래스 선언 (Language 클래스를 상속)
class Chinese extends Language {
// greeting 메소드 오버라이드
public void greeting() {
System.out.println("你好,世界!");
}
}
// Japanese 클래스 선언 (Language 클래스를 상속)
class Japanese extends Language {
// greeting 메소드 오버라이드
public void greeting() {
System.out.println("こんにちは、世界!");
}
}
// Main 클래스 선언
public class Main {
public static void main(String[] args) {
Language language;
// English 객체 생성 및 greeting 메소드 호출
language = new English();
language.greeting(); //출력 : Hello, World!
// Chinese 객체 생성 및 greeting 메소드 호출
language = new Chinese();
language.greeting(); //출력 : 你好,世界!
// Japanese 객체 생성 및 greeting 메소드 호출
language = new Japanese();
language.greeting(); //출력 : こんにちは、世界!
}
}'Spring과 진짜 초면인 우리들에게' 카테고리의 다른 글
| @Override 넌 왜 필요하니? (오버로딩 아님 주의!) (0) | 2023.03.29 |
|---|---|
| 객체지향 - 인터페이스 (0) | 2023.03.28 |
| 객체지향의 특징 4가지 - 다형성 (0) | 2023.03.28 |
| 객체지향의 특징 4가지 - 캡슐화 (0) | 2023.03.28 |
| 객체지향의 특징 4가지 - 추상화 (0) | 2023.03.28 |