Overload和Override、super和this、==和equals()的区别

来源:互联网 发布:知信轰炸机接口 编辑:程序博客网 时间:2024/06/02 02:52

Overload和Override、super和this、==和equals()的区别

Overload和Overrride的区别

overload 是方法的重载,函数名一样,可以通过改参数的类型、参数的个数、以及参数的位置实现重载;

注意:不能通过改变返回类型来实现重载

override 是方法的重写,函数名一样,参数的类型、个数、以及参数的位置都必须一致才是重写;

super和this的区别

super.指父类的属性,this.指当前类的属性;
可以通过this.访问父类的属性,受修饰符的限制;

super()指父类的无参构造,this()指当前类的无参构造,两者都放在构造器的第一行,故这两者不能同时出现;

==和equals()的区别

==用来比较内存地址值是否相等,equals()是比较内存地址中的内容是否相等;如下特例:

String st1 = “abc”;
String st2 = “abc”;
Syso(st1==st2);的结果为true
内存判断堆中有一样的值”abc”就不会在栈中重新开辟新的空间,st1和st2就共用一个地址,故可以用==判断是否相等。

0 0
原创粉丝点击