每日一题,你来投稿,我来解答!
1、抽象类和接口的区别
一: 相同点
都不能直接实例对象,都可以包含抽象方法
二: 不同点
1、接口中除了静态方法和默认方法外只能存在抽象方法,但是抽象类中既可以存在抽象方法也可以存在非抽象方法。
2、接口可以多实现,但是类只能单继承
3、接口中只能定义常量,抽象类中可以定义常量和变量
4、接口中没有构造函数,抽象类中有构造函数
2、重写equals方法需要注意的事项
注: java规范中要求重写equals方法需要具有以下的特性:
1、自反性: 针对非空的x,使用x.equals(x)应该返回true
2、对称性: 针对x,y,如果x.equals(y)为true,那么y.equals(x)也应该为true
3、传递性: 如有x,y,z,存在x.equals(y)和y.equals(z)都为True,那么x.equals(z)也应该为true
4、一致性: 如果比较对象未发生改变,则反复调用equals方法应该返回同样的结果
5、对于任意的非空x,x.equals(null)应该返回false
想了解更多或者投稿,欢迎关注和私信回复【每日一题】或【面试资料】。
本文暂时没有评论,来添加一个吧(●'◡'●)