1.覆写:子类定义了与父类相同的方法或属性,这样的操作就称为覆写(Override)
2.子类定义了与父类方法名称、参数类型及个数完全相同的方法,但是被覆写不能拥有比父类更为严格的访问控制权限。
3.当调用某个方法的时候,如果该方法已被子类所覆写,则调用的一定是被覆写过的方法。

class Person{public void  print(){System.out.println("1,父类的print()方法");}
}
class Student extends Person{public void print(){System.out.println("2.子类的print()方法");}
}
public class Override {public static void main(String[] args){new Student().print();Student s=new Student();s.print();}
}


4.三种访问控制权限:private<default<public (private最严格)
即: 如果父类使用public进行方法声明,那么子类也必须使用public;如果父类使用default,那么子类可以使用default或者public.
5.以后写方法最好用:public ,其次是:private

class Person{public void fun(){this.print();}private void print(){System.out.println("1.[Person]类的print方法");}
}
class Student extends Person{public void print(){   //该方法与父类中的方法没有任何关系System.out.println("2.[Student]类的print方法");}
}
public class Override{public static void main(String[] args){new Student().fun();}
}


6.属性的覆盖:子类定义了和父类一样的属性,就是属性的覆盖
7.这种操作基本没意义,类中的属性都要求使用private封装,一旦封装了,子类不知道父类具有什么属性,就不存在覆盖!

class Person{public String info="Person";
}
class Student extends Person{public String info="Student";
}
public class Override{public static void main(String[] args){System.out.println(new Student().info);}
}


覆写和重载的区别:

1.方法的覆写(Override) 继承
子类重写了父类的一个方法:方法名称相同,形参列表相同,返回类型要相同。
特例:允许返回值类型是父类方法返回类型的子类
2.方法的重载(Overload)
方法名称相同,形参列表不同。
方法的签名:方法名称+形参列表

覆写/重写的共同点:
一定发生在子类上的,必须实现和父类联系。
1.方法名称+形参列表+返回值相同的方法;
2.目的:针对同一行为,表现出和父类不同的方式;
3.访问限定符不能比父类的更加严格;
4.一般建议用@Override注解修饰;
5.IDEA可用generate code来自动生成。

关于覆写——Override相关推荐

  1. 重载(Overload )和覆写(override)的理解及区别

    (因为看书时没有理解它们,今天看msdn的webcast感觉很易懂,就记了下来) 重载Overload特点(两必须一可以) public bool withdraw(double amt, strin ...

  2. 关于java方法的重载(Overloading),覆写(Override)以及final 方法的几点说明

    昨天在一个群里面一个群友问道final 方法可不可以重载,我不假思索的说final 方法不能继承不能重载.后来晚上睡不着觉想想总觉得不对头,翻翻书一看自己简直就是胡说八道,才意识到这些基础概念的东西时 ...

  3. Java中方法的重载(overload)与重写/覆写(override)

    重载-Overload 函数的方法参数个数或类型不一致,称为方法的重载. 从含义上说,只要求参数的个数或参数的类型不一致就说两个函数是重载函数,而至于返回值是否一样,没关系.同时,重载可以发生在同一个 ...

  4. java中的几个术语(覆写override,隐藏hiding,重载overload,遮蔽shadowing,遮盖obscuring)

    今天看完<Java Puzzlers>的第八章,里面各种name reuse,章节最后做了一个非常细致的总结! Overriding(覆写) 一个实例方法可以override它的父类中可以 ...

  5. 遮掩java_关于java中的覆写、重载、隐藏、遮掩、遮蔽

    最近在重新学习java,发现了以前未发现的几个概念,从网上搜索了一些资料,现在整理下.对于我来说,以前只是知道java中的覆写 重载和隐藏,这次却发现还有遮掩和遮蔽这两个概念.下面是整理的一篇文章. ...

  6. JAVA和遮掩_JAVA 你不知道的秘密 覆写,重载,隐藏,遮蔽,遮掩

    覆写(override) 一个实例方法可以覆写(override)在其超类中可访问到的具有相同签名的所有实例方法,从而使能了动态分派(dynamic dispatch):换句话说,VM 将基于实例的运 ...

  7. 08方法重载,覆写,多态

    文章目录 重载overload 方法的覆写 多态 定义 实现一个程序 利用多态 优化 如何在子类中调用被覆盖的父类方法 finally修饰词 重载overload 我们在C语言中,函数名就是不同函数的 ...

  8. Java 之 覆写, 重载, 隐藏, 遮蔽, 遮掩

    文章目录 覆写(override) 存在于子类与父类间 重载(overload) 存在于类内部 隐藏(hide) 存在于子类和父类间 遮蔽 (shadow) 存在于 类内部 遮掩(obscure) 存 ...

  9. Java面向对象:覆写与重载

    override和overload是非常容易混淆的概念. 一.override override是"覆写",是子类实现接口,或者继承父类时,保持方法签名完全相同,实现不同的方法体, ...

最新文章

  1. 现在很火的答题赢钱游戏,让我来简单教你怎么做自动答题器
  2. “中台不就是微服务吗?有啥区别?”
  3. 免费送书啦!《3D计算机视觉:原理、算法及应用》一本全搞定
  4. illegal escape character in String literal
  5. python录入学生信息网_干货满满 | Python趣味编程教学实践
  6. FPGA开发全攻略—— 调试
  7. 了解git的命令行使用
  8. Matplotlib作业一
  9. idea中查看maven依赖树
  10. 宝塔如何备份网站_宝塔备份网站怎样还原_服务器备份数据恢复教程
  11. jdbc 连接 mysql 的字符串
  12. 整理一下Entity Framework的查询
  13. nginx https 根据应用不同的标识转发到不同的服务器端口
  14. Java代码操作数据库(上)——JDBC(JDBC、JUnit、PreparedStatement) 练习
  15. 计算机地址输入法教案,计算机教案(输入法
  16. 智能音箱全国产化电子元件推荐方案
  17. javaScript入门,新手小白也能会
  18. 金多多配资盘面预测收益大于风险
  19. FrankMocap:A Monocular 3D Whole-Body Pose Estimation System via Regression and Integration 2021阅读理解
  20. WinRAR 被曝严重安全漏洞;苹果预计推出跨平台应用

热门文章

  1. 吉林大学计算机初剑锋,RC4算法的密码分析与改进.pdf
  2. springboot进行controller单元测试
  3. 如何快速对人像进行处理?只需使用ON1 Portrait AI即可轻松完成修饰。
  4. 窗帘门帘布艺装修网站搭建模板
  5. 【ARM】ARM(2440)嵌入式开发全套视频教程|tiny210文档的阅读
  6. 圆角边框(border-radius属性、border-radius使用规则)
  7. 批量对图片进行分割(不是裁剪)
  8. 从火炬传递看搜狐奥运赞助商优势
  9. 深度学习与智能故障诊断学习笔记(三)——RNN与LSTM推导详解
  10. 计算机大学生夏令营广告语,武汉大学计算机学院2016年优秀大学生暑期夏令营活动实施方案...