子类从父类中继承方法,有时候,子类需要修改父类中定义的方法的实现,这称作方法覆盖。

比如,GeometricObject类中的toString方法返回表示集合对象的字符串,这个方法就可以被覆盖,返回表示圆的字符串。

1 publicString toString(){

2   return super.toString()+"\nradius is "+radius;

3 }

要在Circle类中调用定义在GeometricObject中的toString方法,使用super.toString()。

需要注意的是:

1、仅当实例方法是可访问时,它才能被覆盖。因为私有方法不能在它的类之外被访问。如果子类中定义的方法在父类中是私有的,那么这两个类完全没有关系。

2、静态方法能被继承,但是不能被覆盖。如果父类中定义的静态方法在子类中被重新定义,那么定义在父类中的静态方法将被隐藏,使用 父类名.静态方法名 调用隐藏的静态方法。

另外,说一下Object类中equals的方法的默认实现和覆盖方法:

1 public booleanequals(Object obj){2 return (this==obj);3 }

这个方法使用==运算符检测两个引用变量是否指向同一个对象,因此,应该在自己的客户类中覆盖这个方法,以测试两个不同的对象是否具有相同的内容。比如基于元的半径比较两个圆是否相等,如下所示:

1 public booleanequals(Object obj){2 if(obj instanceofCircle){3 return radius==((Circle)obj).radius;4 }5 else

6 return false;7 }

这时,需要注意的是,覆盖equals方法时,必须使用equals(Object obj)。

java中super可以重新父类么_Java Super 覆盖方法相关推荐

  1. java中main函数的值是_java基础-main方法

    概述 Java中的main方法,是一个java应用程序的入口,无论一个java的应用多么复杂庞大,或是多么的小,只要他是一个可以运行的java程序那么必然就要有一个main方法.main方法的定义格式 ...

  2. java中时间与怎么判断过期_java标记过期方法

    ava注解:@Deprecated(不建议使用的,废弃的), @SuppressWarnings(忽略警告,达到抑制编译器产生警告的目的) @Deprecated可以修饰类.方法.变量,在java源码 ...

  3. java sleep唤醒_详解Java中的线程让步yield()与线程休眠sleep()方法

    Java中的线程让步会让线程让出优先级,而休眠则会让线程进入阻塞状态等待被唤醒,这里我们对比线程等待的wait()方法,来详解Java中的线程让步yield()与线程休眠sleep()方法 线程让步: ...

  4. java类名可以是数字吗_在 Java 中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序特性称为( )。_学小易找答案...

    [简答题]Java 支持多继承吗 ? [单选题]以下关于继承的叙述正确的是( ). [单选题]在 Java 中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数.类型或顺序各不相同,传回的值也 ...

  5. java中char类型转换成int类型的两种方法

    java中char类型转换成int类型的两种方法 方法一: 第一种利用Integer包装类的方法Integer.parseInt Copychar ch = '9'; if (Character.is ...

  6. java中子类怎样调用父类的属性_java的继承、重载(overload)、覆盖(override)的总结...

    java为了解决相似属性和行为能共用相同的代码,也是为了便于标准模块化.减少相同代码要多次重复编写的问题,提供了继承.重载和覆盖的功能.继承是针对类,重载和覆盖是针对方法的. 一.继承:为了便于理解. ...

  7. java中6与3等于几_Java(六)

    接口 一.语法: public interface 接口名{ public void foo(): } 二.特征 1.接口不可被实列化 2.实现类必须实现接口所有方法 3.实现类可以实现多个接口 4. ...

  8. Java中的 <T extends Comparable<? super T>>

    Java 中类似 <T extends Comparable<? super T>> 这样的类型参数 (Type Parameter) 在 JDK 中或工具类方法中经常能看到. ...

  9. java 中的finally你知多少_Java 处理异常 9 个最佳实践,你知道几个?

    1. 在Finally中清理资源或者使用Try-With-Resource语句使用Finally Java 7的Try-With-Resource语句 2. 给出准确的异常处理信息 3. 记录你所指定 ...

最新文章

  1. SQL Server 审核(Audit)-- 审核组件
  2. java和js的正则表达式一样吗_JavaScript与Java正则表达式写法的区别
  3. Swift的数组与OC中数组的区别
  4. Squid安装与配置
  5. 元气森林,饮料界的小罐茶?
  6. hexo博客添加暗色模式_我如何将暗模式添加到我的网站
  7. 1.C#基础学习笔记3---C#字符串(转义符和内存存储无关)
  8. opencv3.2+opencv_contrib+cmake
  9. Linux下的微秒级定时器: usleep, nanosleep, select, pselect
  10. tcpdf中文解决方案
  11. Kotlin — 所有知识体系
  12. 看拉扎维《模拟CMOS集成电路设计》的一些总结和思考(八)——反馈
  13. Android渐变折线图,自定义View之颜色渐变折线图
  14. 该模型是内置式的MTPA控制,速度环的输出为给定转矩,然后方式1通过求解MTPA方程得到dq给定电流
  15. 影响电缆特性阻抗的三个方面
  16. Linux运维工程师必备工具合集
  17. 【PPT】画三维立体块
  18. 俞敏洪大学经典励志演讲:像树一样活着
  19. LR常用函数以及参数化设置
  20. 散装食品的经营之道,从哪方面入手?

热门文章

  1. equipment download和CRM 的change history
  2. Jerry Wang 2014年1月3日top liked SCN博客
  3. WebSocket客户端连接断开后,服务器端的析构处理
  4. 在SAP CRM呼叫中心里创建Service Request的实现技术
  5. 如何使用SAP CRM Marketing Survey创建一个市场问卷调查
  6. paraView做动画(终极教程)
  7. mysql数据库常用字段类型_快速了解MySQL数据库常用字段类型
  8. c++监听键盘_想知道木马程序的键盘记录原理吗?python告诉你 !
  9. python常用代码_Python常用算法学习(4) 数据结构(原理+代码)-最全总结
  10. python函数参数的作用是_python函数参数理解