首页 > 编程语言 > 详细

Java基础知识

时间:2020-08-20 16:34:08      阅读:68      评论:0      收藏:0      [点我收藏+]
1,java两个对象的比较,Java中equals和==之间的区别
如果是基本类型比较,那么只能用==来比较,不能用equals。
对于基本类型的包装类型,比如Boolean、Character、Byte、Shot、Integer、Long、Float、Double等的引用变量,==是比较地址的,而equals是比较内容的
“==”运算符用于比较两个变量的值是否相等,equals()用于比较两个对象中的内容是否一样。
“==”操作符用于比较我们引用数据的类型的变量的值是否相等,那么equals()比较两个引用变量所指对象的内容是否相等
2,java重载和重写的区别,那个是运行时多态,那个是编译时多态,那个静态绑定,那个是动态绑定。
方法的重写(Overriding)和重载(Overloading)是java多态性的不同表现,重写是父类与子类之间多态性的一种表现,重载可以理解成多态的具体表现形式,
重写:方法名参数都一样
重载:方法名相同,参数不同
在Java中存在两种绑定方式,一种为静态绑定,又称作早期绑定;另一种就是动态绑定,也叫后期绑定
静态绑定发生在编译时期,动态绑定发生在运行时
静态绑定使用类信息来完成,而动态绑定则需要使用对象信息来完成
重载的方法是用静态绑定完成,而重写的方法则使用动态绑定完成,
根据何时确定执行多态方法中的哪一个,多态分为两种情况:编译时多态和运行时多态。如果在编译时能够确定执行多态方法
中的哪一个,称为编译时多态,否则称为运行时多态。
方法重载都是编译时多态。根据实际参数的数据类型、个数和次序,Java在编译时能够确定执行重载方法中的哪一个。
方法重写表现出两种多态性,当对象引用本类实例时,为编译时多态,否则为运行时多态。例如,以下声明p、m引用本类实例,调用toString()方法是编译时多态。

 

Java基础知识

原文:https://www.cnblogs.com/fmhh/p/13524112.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!