2023. 12. 19. 21:09ㆍ2023.11.21-2024.05.31
package com.sukgi.inheritance;
//상속
//현실에서는 부모가 자식에게 물려주는 행위
//자식은 부모의 모든 것을 자신의 것처럼 사용합니다.
//310P
// 자바에서는 부모와 자식 클래스를 만들고 서로 연결합니다.
//부모의 코드를 모두 내려받아서 자식이 자신의 것 처럼 씁니다.
//왜?
class A {
int field1;
void method1() {
}
}
class B extends A {// 자식 B가 부모 A를 상속한다
int field2;
void method2() {
}
}
class C extends B {
}
public class Inheritance {
public static void main(String[] args) {
A a = new A();
B b = new B();
b.field1 = 100;
b.method1(); // 부모의 코드가 자식에게 내려갑니다.
C c = new C();
c.method1();
Cat cat = new Cat("야옹",1);
Dog dog = new Dog("멍멍",1);
}
}
주어진 코드는 자바에서 클래스 간 상속을 나타내고 있습니다. 클래스 A는 기본 클래스이며, 클래스 B는 A를 상속합니다. 그리고 클래스 C는 B를 상속합니다. 이것은 클래스 B가 A의 모든 멤버(필드와 메서드)를 상속하고, 클래스 C는 A와 B의 멤버를 모두 상속받음을 의미합니다.
상속을 통해 자식 클래스는 부모 클래스의 멤버를 활용할 수 있고, 부모 클래스의 특징을 물려받을 수 있습니다. 이는 코드의 재사용성과 유지보수성을 향상시키는데 도움이 됩니다.
'2023.11.21-2024.05.31' 카테고리의 다른 글
231219 JAVA Inheritance(상속 + 접근제어자 protected) (0) | 2023.12.20 |
---|---|
231218 JAVA Animal, Cat, Dog, Zoo (0) | 2023.12.19 |
231218 JAVA static02(인스턴스 멤버, 정적 멤버) (0) | 2023.12.19 |
231218 JAVA static01(인스턴스 멤버, 정적 멤버) (0) | 2023.12.19 |
231218 JAVA Human AM02(접근제어자 연습) (0) | 2023.12.19 |