Java编程之方法重写

简介: 继承关系的初始化顺序• 父类属性• 父类的构造方法• 子类属性• 子类的构造方法什么是方法重写- 方法重写的规则:1. 方法名相同2. 参数列表相同3. 返回值列表相同或者是其子类相同4. 访问权限不能严于父类

继承关系的初始化顺序

  • 父类属性
  • 父类的构造方法
  • 子类属性
  • 子类的构造方法

什么是方法重写

- 方法重写的规则:

1. 方法名相同

2. 参数列表相同

3. 返回值列表相同或者是其子类相同

4. 访问权限不能严于父类

解析:

       方法重写就是当我们在子类里边去调用父类的方法

   时,没有办法输出子类特有的属性,原因是因为父类不

   可以直接去访问子类的属性,这个时间就需要用到方法

   重写或者叫做方法覆盖,那么什么是方法重写呢?

       方法重写就是方法方法名相同,名称一摸一样,参

   数列表相同,参数个数和类型要求必须一致,返回值类

   型相同,或者是其子类,访问权限不能严于父类就是访

   问修饰符的权限不能低于父类的修饰符访问权限。

   接下来根据一个小案例感受一下这个知识点。

案例:

父类代码如下:

classGZ {
privateStringname;
privateintage;
publicStringsex;
publicGZ(){
System.out.println("父类无参构造方法");
     }
publicGZ(Stringa,intb,Stringc){
this.name=a;
this.age=b;
this.sex=c;
System.out.println("父类有参构造方法");
     }
publicvoidshow(){
System.out.println("我是父类的构造方法");
    }
}

子类代码如下:

classDemoextendsGZ {
publicstaticvoidmain(String[] args) {
GZinput=newGZ();
    }
publicvoidsetSex(Stringsex){
this.sex=sex;
    }
@Overridepublicvoidshow(){
super.show();
System.out.println(sex);
    }
}

子类代码如下:

publicclassSun {
publicstaticvoidmain(String[] args){
GZinput=newGZ("铁锤",18,"男");
input.show();
    }
}

代码解析:

       通过序号访问,不需要用呢,这个地方也可以不调用,

   它并不是一个必须的关系,这是我们看到的重写,重写的

   规则大家一定要,理解并熟练记住,方法名相同,参数相

   同,返回之相同或是其子类,访问权限,不能言语负累,

   这是一个重点,我们前面学过一个方法的重写,那我们对

   方法重载和方法重写做一个对比,方法重写,是在子类当

   中去重写父类,就是覆盖,要求方法名相同,参数相同,

   返回值相同或是其子类,访问修饰符不能比父类更严格。

方法重载与方法重写的区别:

方法重载与方法重写的区别.png

目录
相关文章
|
2天前
|
Java 开发者 UED
掌握Java多线程编程:从基础到高级
【5月更文挑战第31天】本文深入探讨了Java多线程编程的核心概念,包括线程的创建、生命周期、同步机制以及高级并发工具。通过实际示例和代码片段,读者将学会如何有效地管理和协调线程,以编写高效且稳定的并发应用程序。
|
2天前
|
Java 调度
Java中的多线程编程:基础知识与实践
【5月更文挑战第31天】本文将深入探讨Java中的多线程编程,从基础知识到实践应用,全面解析多线程的概念、创建、同步以及在实际应用中的运用。我们将通过实例来展示如何在Java中有效地使用多线程,以提高程序的性能和响应速度。
|
2天前
|
Java 测试技术 API
Java语言源文件:深入解析与编程实践
Java语言源文件:深入解析与编程实践
|
2天前
|
存储 安全 Java
Java语言中的多线程编程技术深入解析
Java语言中的多线程编程技术深入解析
|
2天前
|
存储 Java API
Java语言IO(输入/输出)编程技术深度解析
Java语言IO(输入/输出)编程技术深度解析
|
2天前
|
存储 安全 Java
深入探索Java语言泛型编程
深入探索Java语言泛型编程
|
2天前
|
安全 Java 调度
Java语言多线程编程技术深度解析
Java语言多线程编程技术深度解析
|
2天前
|
安全 Java
JAVA语言中的多线程编程技术
JAVA语言中的多线程编程技术
|
2天前
|
存储 Java API
Java语法基础:构建编程世界的基石
Java语法基础:构建编程世界的基石
|
2天前
|
网络协议 Java
Java的Socket编程:TCP/IP与UDP深入探索
Java的Socket编程:TCP/IP与UDP深入探索
8 0