잘못 이해하셨습니다. 재작성은 다형성을 달성하는 열쇠입니다. 오버로딩은 단지 몇 가지 매개변수를 추가하고 메서드 이름을 재사용하는 것뿐입니다. 재작성이 다형성을 달성하는 데 중요한 이유는 객체 지향이 인터페이스 지향 프로그래밍 또는 추상화 지향 프로그래밍을 장려하기 때문입니다. 예:
과일의 상위 클래스에는 printName 메소드가 있습니다:
으아아아
사과와 오렌지는 모두 Fruit의 하위 클래스일 수 있지만 구현 중에 printName 메서드를 재정의하여 다른 이름 출력을 얻을 수 있습니다.
다시 작성하면 코드 다양성도 얻을 수 있습니다.
하위 클래스가 상위 클래스를 상속한 후에는 상위 클래스의 메서드를 다시 작성할 필요가 없으므로 코드 양이 절약됩니다.
사용 조건이 변경되어 상위 클래스의 메서드가 사용 요구 사항을 충족할 수 없는 경우 메서드를 다시 작성하고 상위 클래스의 메서드를 덮어써야 합니다.
재작성은 Java의 다양한 패턴에서 작동할 수 있습니다.
잘못 이해하셨습니다. 재작성은 다형성을 달성하는 열쇠입니다. 오버로딩은 단지 몇 가지 매개변수를 추가하고 메서드 이름을 재사용하는 것뿐입니다. 재작성이 다형성을 달성하는 데 중요한 이유는 객체 지향이 인터페이스 지향 프로그래밍 또는 추상화 지향 프로그래밍을 장려하기 때문입니다. 예:
과일의 상위 클래스에는 printName 메소드가 있습니다:
으아아아사과와 오렌지는 모두 Fruit의 하위 클래스일 수 있지만 구현 중에 printName 메서드를 재정의하여 다른 이름 출력을 얻을 수 있습니다.
상속의 장점 중 하나는 코드 양을 줄이는 것입니다. 모든 클래스에서 동일한 문을 작성할 필요가 없습니다. 직접 상속은 아버지와 아들의 관계와 같습니다. 아버지의 일이지만 아들도 스스로 성장할 수 있습니다.
상위 클래스 메소드를 다시 작성하고 템플릿을 사용하여 특수 클래스를 정의합니다. 모두 겉으로는 동일해 보이지만 내부는 다릅니다.