Java面向对象之方法重写详解

简介: Java面向对象之方法重写详解

方法的重写(override/overwrite)

  1. 1、重写:子类继承父类以后,可以对父类中同名同参的方法,进行覆盖。
  2. 应用:重写以后,当创建子类对象以后,通过子类对象调用子父类中,同名同参的方法时,实际执行的方法为,子类重写父类的方法。

重写的规定:

方法的声明:

权限修饰符 返回值类型 方法名(形参列表){

方法体

}

约定俗称:子类中叫重写的方法,父类中叫做被重写的方法。

  1. 子类重写的方法名和形参列表和父类中被重写的方法的方法名和形参列表相同。
  2. 子类重写的方法权限修饰符不小于父类中被重写的方法的权限修饰符。

特殊情况:父类中的方法的权限修饰符为private时,子类无法重写该方法。

3. 返回值类型:

3.1、父类被重写的方法的返回值类型为void时,子类中重写的方法的返回值类型也必须为void。
  3.2、父类被重写的方法的返回值类型为A类型时,则子类重写方法的返回值类型可以是A类型或者A类型的子类。
  3.3、父类被重写的方法的返回值类型为基本数据类型时,则子类重写方法的返回值类型是必须是对应父类的基本数据类型。比如:父类中的返回值类型为double,则子类重写的方法的返回值类型也必须为double类型。
  1. 子类重写的方法抛出的异常类型不大于父类被重写的方法抛出的异常类型。

注意:子类和父类中的同名同参的方法,要么都声明为非static的(可以重写),要么为static的(不是重写)。

以上是重写的详解,供大家参考学习!


目录
相关文章
|
1月前
|
Java 关系型数据库 数据库
面向对象设计原则在Java中的实现与案例分析
【10月更文挑战第25天】本文通过Java语言的具体实现和案例分析,详细介绍了面向对象设计的五大核心原则:单一职责原则、开闭原则、里氏替换原则、接口隔离原则和依赖倒置原则。这些原则帮助开发者构建更加灵活、可维护和可扩展的系统,不仅适用于Java,也适用于其他面向对象编程语言。
22 2
|
3月前
|
Java 编译器
封装,继承,多态【Java面向对象知识回顾①】
本文回顾了Java面向对象编程的三大特性:封装、继承和多态。封装通过将数据和方法结合在类中并隐藏实现细节来保护对象状态,继承允许新类扩展现有类的功能,而多态则允许对象在不同情况下表现出不同的行为,这些特性共同提高了代码的复用性、扩展性和灵活性。
封装,继承,多态【Java面向对象知识回顾①】
|
3月前
|
Java
java中面向过程和面向对象区别?
java中面向过程和面向对象区别?
35 4
|
3月前
|
Java
接口和抽象类【Java面向对象知识回顾②】
本文讨论了Java中抽象类和接口的概念与区别。抽象类是不能被实例化的类,可以包含抽象和非抽象方法,常用作其他类的基类。接口是一种纯抽象类型,只包含抽象方法和常量,不能被实例化,且实现接口的类必须实现接口中定义的所有方法。文章还比较了抽象类和接口在实现方式、方法类型、成员变量、构造方法和访问修饰符等方面的不同,并探讨了它们的使用场景。
接口和抽象类【Java面向对象知识回顾②】
|
2月前
|
存储 Java 程序员
Java基础-面向对象
Java基础-面向对象
17 0
|
3月前
|
安全 Java Go
面向对象程序设计语言:Java
Java语言语法和C语言和C++语言很接近,很容易学习和使用,Java丢弃了C++中很少使用的、很难理解的、令人迷惑的特性,Java语言不使用指针,而是引用,并提供了自动分配和回收内存空间,使得程序员不必为内存管理而担忧
62 2
|
3月前
|
Java 开发者
Java 面向对象
Java 是一种面向对象的编程语言,通过对象与类的概念组织代码和数据。面向对象编程的核心包括类、对象、继承、多态、封装和抽象。类是对象的蓝图,定义了属性和行为;对象则是类的实例。继承允许子类继承父类的属性和方法,增强代码复用性;多态则支持通过相同接口调用不同类型对象的行为,包括方法重载和重写。封装通过公共方法隐藏对象细节,提高安全性;抽象则对对象特征进行提炼,通过抽象类和接口实现。理解这些概念有助于设计高效、可维护的 Java 应用程序。
|
4月前
|
Java 开发者 C++
|
3月前
|
Java 开发者
Java编程之旅:探索面向对象的力量
【9月更文挑战第16天】在编程的世界中,Java以其强大的面向对象编程特性而闻名。本文将带你走进Java的世界,一起探索类与对象的奥秘,学习如何通过封装、继承和多态性构建健壮的软件系统。无论你是初学者还是有经验的开发者,本文都旨在提供实用的代码示例,帮助你提升Java技能。准备好开始这段旅程了吗?让我们启程吧!
|
4月前
|
存储 Java 数据库连接
Java编程之旅:从基础到高级,探索面向对象的力量
【8月更文挑战第31天】本文是一篇深入浅出的Java编程指南,旨在通过生动的例子和实际代码演示,带领读者从Java的基础语法起步,逐步深入到面向对象的核心概念,最后探讨如何在实际项目中应用这些知识。无论你是编程新手还是有一定经验的开发者,这篇文章都将为你提供有价值的见解和实用的技巧。