English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
구성은 설계 기술로, 클래스가 다른 클래스의 인스턴스를 자신의 필드로 사용할 수 있습니다. 상속은 메커니즘으로, 객체가 클래스를 확장하여 부모 객체의 속성과 행동을 얻을 수 있습니다.
구성과 상속은 모두 관련 클래스를 통해 코드 재사용성을 제공합니다. 구성을 사용할 때, 우리는 상속의 기능을 얻을 수 있습니다. 다음은 차이점입니다.
순서 | 키 | 상속 | 구성 |
---|---|---|---|
1 | 기본적인 | 상속은 "는" 관계입니다 | 구성은 "존재" 관계입니다 |
2 | 코드 재사용 | 상속에서, 클래스는 하나의 인터페이스만 확장할 수 있으므로, 한 클래스에서만 코드를 재사용할 수 있습니다 | 우리는 여러 클래스에서 코드를 재사용할 수 있습니다 |
3 | 범위 | 상속은 컴파일 시기에 기능을 제공합니다 | 구현하기 쉬운 구성 |
4 | 마지막 | 우리는 마지막 수업의 코드를 재사용할 수 없습니다 | 그것은 심지어 최종 클래스에서 코드를 재사용할 수 있습니다 |
5 | 메서드 | 그것은 부모 클래스의 공개 메서드와 보호된 메서드를 공개합니다 | 그것은 노출되지 않습니다. 그들은 공개 인터페이스를 통해 상호작용합니다. |
class Animal { String name = "Orio"; } class Dog extends Animal { String type = "Dog"; public static void main(String args[]) { Dog p = new Dog(); System.out.println("Name:",+p.name); System.out.println("Type:",+p.type); } }
public class Student { } public class College { private Student student; public College() { this.student = new Student(); } }