区分重写和重载

1定义:

方法的重载:在同一个类中,允许存在一个以上的同名方法,只要它们的

参数列表不同即 参数个数不同(包括参数顺序),参数类型不同。构造器可以重载。

方法的重写(override / overwrite):子类继承父类以后,可以对父类中同名同参数的方法,进行覆盖操作。

2

方法的重载:判断是否是重载

跟方法的权限修饰符、返回值类型、形参变量名、方法体都没有关系。

方法的重写(override / overwrite):

子类重写的方法的方法名和形参列表与父类被重写的方法的方法名和形参列表相同

子类重写的方法的权限修饰符不小于父类被重写的方法的权限修饰符

特殊情况:子类不能重写父类中声明为private权限的方法

返回值类型:

>父类被重写的方法的返回值类型是void,则子类重写的方法的返回值类型只能是void

>父类被重写的方法的返回值类型是A类型,则子类重写的方法的返回值类型可以是A类或A类的子类

父类被重写的方法的返回值类型是基本数据类型(比如:double),则子类重写的方法的返回值类型必须是相同的基本数据类型(必须也是double)

子类重写的方法抛出的异常类型不大于父类被重写的方法抛出的异常类型(具体放到异常处理时候讲)

子类和父类中的同名同参数的方法要么都声明为非static的(考虑重写),要么都声明为static的(不是重写)。

3 从运行和编译的角度看:重载不表现为多态性,重写表现为多态性。(从编译和运行的角度,重载,在编译器就确定调的是那个方法了,运行也是这一个,而重写编译器认为是调用父类的,而运行时调用的是子类,表现为多态性(动态绑定))

/*

*

* 面试题: == 和 equals() 区别

一、回顾 == 的使用:

* == :运算符

* 1. 可以使用在基本数据类型变量和引用数据类型变量中

* 2. 如果比较的是基本数据类型变量:比较两个变量保存的数据是否相等。(不一定类型要相同 )不跟 boolean 比

*    如果比较的是引用数据类型变量:比较两个对象的地址值是否相同.即两个引用是否指向同一个对象实体

* 补充: == 符号使用时,必须保证符号左右两边的变量类型一致。

*

* 二、equals()方法的使用:

* 1. 是一个方法,而非运算符

* 2. 只能适用于引用数据类型

* 3. Object类中equals()的定义:

*    public boolean equals(Object obj) {

return (this == obj);

}

*    说明:Object类中定义的equals()和==的作用是相同的:比较两个对象的地址值是否相同.即两个引用是否指向同一个对象实体

* 4. 像String、Date、File、包装类等都重写了Object类中的equals()方法。重写以后,比较的不是两个引用的地址是否相同,而是比较两个对象的"实体内容"是否相同。

*5. 通常情况下,我们自定义的类如果使用equals()的话,也通常是比较两个对象的"实体内容"是否相同。那么,我们就需要对Object类中的equals()进行重写.

*    重写的原则:比较两个对象的实体内容是否相同.

*/

java的地址是虚拟内存地址 不是真实的地址

java面经_Java面经相关推荐

  1. 用java的io做一个代码计数器,如何制作Java页面计数器_java

    大庆采油六厂采油工艺研究所 王兵 王波 常常逛WWW的人,一定对许多起始页上的计数器感兴趣.每当你光临某个站点的起始页时,它的计数器就很亲切地告诉你,从某年某月某日开始,你是第几位光临的人.你可能也想 ...

  2. 【源码+图片素材+详细教程】Java游戏开发_Java开发经典游戏飞翔的小鸟_飞扬的小鸟_Java游戏项目Flappy Bird像素鸟游戏_Java课程设计项目

    课程目标: 1.通过本课程的学习巩固Java的相关基础知识,例如循环判断,数组和集合的使用,对象的继承,接口的实现,窗口的创建,事件监听,图形绘制. 2.完成小鸟的移动,管道自动生成.碰撞死亡,计分系 ...

  3. 【源码+教程】Java桌球游戏_Java初级项目_Java练手项目_Java项目实战_Java游戏开发

    今天分享的Java开源游戏项目是桌球游戏,初学者也可以用来练习喔~课程详细讲解了一个桌球游戏的编写思路和流程,即使你刚学Java没多久,也可以跟随该教程视频完成属于你自己的桌球游戏!同时,还可以加深和 ...

  4. 【源码+项目部署】Java课程设计项目_Java人力资源管理系统

    对就业和毕业都有帮助的Java实战项目来咯--人力资源管理系统! 人力资源管理系统 |Java项目2小时上手编写_源码+数据库拿走不谢!Java实战项目_Java开发https://www.bilib ...

  5. java 股票 代码_Java中利用散列表实现股票行情的查询_java

    ---- 在java中,提供了一个散列表类Hashtable,利用该类,我们可以按照特定的方式来存储数据,从而达到快速检索的目的.本文以查询股票的收盘数据为例,详细地说明java中散列表的使用方法. ...

  6. java校验文件格式_java验证文件格式工具类(获取文件真实格式)

    , String>();privateVerifyFileType(){} static{ getAllFileType();//初始化文件类型信息} /*** Discription:[get ...

  7. 算法java语言描述_java语言描述数据结构与算法崔笑颜的博客

    java语言描述数据结构与算法崔笑颜的博客 冒泡排序 插入排序 选择排序 希尔排序 快速排序 归并排序 二分查找package com.demo.test; import java.util.Arra ...

  8. java线程触发_java线程

    线程. 状态 新建状态(New): 当用 new 操作符创建一个线程时, 例如 new Thread(r),线程还没有开始运行,此时 线程处在新建状态. 当一个线程处于新生状态时,程序还没有开始运行线 ...

  9. windows java 小程序_JAVA第一个窗体小程序

    import java.awt.*; public class Day1015_Frame { public static void main(String[] args) { Frame frame ...

  10. java applet 缺陷_Java Applet在最新JRE上的奇怪性能行为(7.55)

    我们使用来自签名提供商的一些专有小程序来签署一些 XML.当我们使用JRE 6u37 applet运行没有问题 – 运行速度非常快,从不冻结.但是当我们将JRE更新为7u55或更新时,它经常开始挂起. ...

最新文章

  1. 关于TensorFlow报错ModuleNotFoundError: No module named ‘imutils‘
  2. 怎么遍历服务器文件夹,遍历远程服务器某个文件夹下的文件
  3. Java基础--继承、this、super、抽象类
  4. Mybatis各种模糊查询及#和$区别
  5. LeetCode 题解之Find Peak Element
  6. 矩阵相乘Java版(第一个java程序)
  7. php函数实验,PHP函数
  8. java学习二---对象和内存管理
  9. 最新log4j2 远程代码执行漏洞(紧急扩散)
  10. ESP32烧录bin,乐鑫下载工具使用flash_download_tool
  11. python安装教程-01-Python安装教程与特色介绍-小白python入门基础
  12. 用OpenStack构建中国人寿数据中心生产云
  13. 最小生成树的实现(C语言)
  14. 【已解决】最新版本的Chrome浏览器如何设置网页编码
  15. 3分钟快速制作一张高颜值的公众号封面图
  16. Elixir Meetup 相关不相关的一些感触
  17. 重走c语言—摸鱼大学生的c语言基础笔记
  18. 三坐标检测基础知识之建立工件坐标系
  19. HTML期末学生大作业-拯救宠物网页作业html+css
  20. 快速排序的优化1: 选取中间值或随机值作为基准,C语言实现

热门文章

  1. 数值计算软件有哪些?一款国产软件非常亮眼。
  2. 打开Word时会出现错误的解决办法
  3. php手册 下载,php手册chm
  4. php完全中文手册下载,PHP4完全中文手册下载-PHP4完全中文手册 免费版
  5. 408计算机考研2012真题解析,2018年计算机408统考考研真题及答案解析.pdf
  6. 过程工业中的smartLink HART-IP
  7. 阿里架构师直言:“没有实战都是纸上谈兵”,Redis实战PDF分享
  8. 嵌入式驱动开发学习路线
  9. 2.4G射频电路设计参考(wifi ble)
  10. 基于vue的网页标尺辅助线工具(vue-ruler-tool)