Java에서 오버로드와 재작성의 차이점: 1. 오버로드는 이 클래스에서 발생하고 재작성은 상위 클래스와 하위 클래스 간에 발생합니다. 2. 오버로드된 메서드 이름은 동일해야 하며 재정의된 메서드 이름은 동일해야 합니다. . 그리고 반환 값 유형은 동일해야 합니다. 3. 오버로드된 매개변수 목록은 다르고 재정의된 매개변수 목록은 동일해야 합니다.
Overloading
(권장 튜토리얼: java 강좌)
이 클래스에서 오버로드가 발생합니다. 메소드 이름은 동일하고 매개변수 목록은 다르며 반환 값과는 아무런 관련이 없습니다. 메소드 이름과 매개변수 목록과 매개변수 유형은 관련이 있습니다.
오버로드: 첫째, 동일한 메소드 이름을 가진 클래스 또는 해당 하위 클래스에 위치하지만 메소드 매개변수가 다르며 반환 값 유형이 될 수 있습니다. 같거나 다름.
(1): 메소드 이름은 동일해야 합니다.
(2): 메소드의 매개변수 목록은 달라야 합니다.
(3): 액세스 한정자와 반환 값 유형은 동일하거나 다를 수 있습니다.
사실 간단히 말해서 오버로딩이란 상황에 따라 다른 메서드를 작성하는 것을 의미합니다. 예를 들어, 동일한 클래스에서 다양한 생성자를 작성하여 다양한 매개변수를 초기화합니다.
Overriding
오버라이딩은 상위 클래스와 하위 클래스 사이에서 발생합니다. 예를 들어 모든 클래스는 Object 클래스에서 상속됩니다. Object 클래스 자체에는 동일, 해시 코드, toString 메서드 등이 있습니다. 모든 하위 클래스에서 동일한 이름과 동일한 매개변수 목록을 정의합니다.
Override: 일반적으로 하위 클래스와 상위 클래스 간의 관계를 나타냅니다. 주요 특징은 동일한 메서드 이름과 동일한 매개변수이지만 구체적인 구현은 다릅니다.
재정의의 특징:
(1): 메서드 이름이 동일해야 하고 반환 값 유형이 동일해야 합니다.
(2): 매개변수 목록이 동일해야 합니다.
(3): 액세스 권한 상위 클래스에서 재정의되는 메서드보다 클 수 없습니다. 메서드의 액세스 권한은 더 낮습니다. 예: 상위 클래스의 메서드가 public으로 선언된 경우 하위 클래스에서 해당 메서드를 재정의할 때 해당 메서드를 protected로 선언할 수 없습니다.
(4): 하위 클래스와 상위 클래스가 동일한 패키지에 있는 경우 하위 클래스는 private 및 final로 선언된 메서드를 제외하고 상위 클래스의 모든 메서드를 재정의할 수 있습니다.
(5): 생성 메서드는 재정의될 수 없습니다.
간단히 말하면 특정 구현 클래스는 상위 클래스의 메서드 구현에 만족하지 않으며 자체 요구 사항을 충족하는 메서드를 작성해야 합니다.
관련 권장 사항: Java 시작하기
위 내용은 Java에서 오버로드와 다시 작성의 차이점은 무엇입니까의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!