>  기사  >  Java  >  Java에서 다시 작성이란 무엇입니까?

Java에서 다시 작성이란 무엇입니까?

(*-*)浩
(*-*)浩원래의
2019-11-14 11:40:373496검색

Java에서 다시 작성이란 무엇입니까?

하위 클래스에 상위 클래스의 기능이 필요하고 하위 클래스에 새 콘텐츠가 있는 경우 상위 클래스의 메서드를 재정의할 수 있습니다. 실제 개발 과정에서 코드의 양이 점차 늘어나면서 유지 관리가 큰 문제가 되었는데, 메소드를 수정해야 할 경우 자체 코드와 하위 클래스 코드가 영향을 받게 되므로 문제를 해결하는 것이 좋습니다.

메서드 재작성은 메소드 덮어쓰기 및 메소드 복사라고도 합니다. (추천 학습: vjava 강좌)

Rewriting은 하위 클래스의 구현 과정으로 상위 클래스에 대한 접근을 허용하며, 반환값과 Shape 매개변수는 변경할 수 없습니다.

메소드 재작성의 특징

하위 클래스와 상위 클래스의 메소드 선언은 동일합니다.

하위 클래스의 메소드 선언은 상위 클래스의 메소드 선언과 동일해야 합니다

오버라이드할 메소드 하위 클래스, 메서드 권한 수정자는 상위 클래스보다 낮을 수 없습니다(공용, 보호, 기본, 개인 권한 순서로 증가)

상위 클래스의 비공개 메서드, 하위 클래스는 메서드를 재정의할 수 없습니다

코드 예

Person.java 부모 첫 번째 클래스 만들기

package Rewrite;
 
public class Person {
    public void eat()
    {
        System.out.println("吃饭!");
    }
    public void work()
    {
        System.out.println("工作!");
    }
    public void sleep()
    {
        System.out.println("睡觉!");
    }
}

Main.java에서 Student.java 하위 클래스 만들기

package Rewrite;
/*
Student子类继承Person父类,并对父类的work()方法进行重写
 */
public class Student extends Person {
    public void work()
    {
        super.work();       //使用super关键字调用父类方法
        System.out.println("学习!");
        System.out.println("娱乐!");
    }
}

Call

package Rewrite;
 
public class Main {
    public static void main(String[] args)
    {
        Person per = new Person();      //创建父类对象
        per.eat();
        per.work();
        per.sleep();
        Student stu = new Student();        //创建子类对象
        stu.work();
    }
}

예제 분석:

은 Person 부모 클래스에 세 가지 메서드를 정의합니다. , 그리고 하위 클래스에서

에서 work() 메서드를 다시 작성합니다.

재작성 시 함수의 반환값 유형, 함수 이름, 매개변수 목록은 동일합니다.

서브 클래스에서는 super 키워드를 사용하여 부모를 호출할 수 있습니다. 수업방식

위 내용은 Java에서 다시 작성이란 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.