Java基础知识
文章平均质量分 50
Java基础知识汇总
'冬天的味道'
熬过了无人问津的日子,才有诗和远方
展开
-
接口与抽象类的区别
接口只能定义抽象方法和常量,不能包含具体实现。所有的方法默认为公共抽象方法,不需要使用abstract关键字进行声明。接口在JDK8之前都是抽象方法,在JDK8可以有default方法,在JDK9中允许有私有普通方法。接口中的成员变量只能public static final(默认)。抽象类可以定义抽象方法、常量,也可以白喊具体方法的实现。抽象方法需要使用abstract关键字进行声明。原创 2024-02-08 09:48:11 · 241 阅读 · 0 评论 -
理解equlas()和hashCode()
为什么在重写 equals 方法的时候需要重写 hashCode 方法?为什么两个不同的对象可能有相同的hash哈希码(hashCode)?原创 2024-02-07 12:17:10 · 229 阅读 · 1 评论 -
= 和 += 的区别(a=a+b和a+=b的区别)
= 是一个复合赋值操作,隐式的将加操作的结果类型强制转换为持有结果的类型。具有更高的效率和更好的性能,尤其在处理可变类型时更为明显。但需要注意的是,对于某些特定的数据类型,如String,在使用。如果两个整数相加,如:byte、short、或者int,首先会将他们提升到int类型,然后再执行加法操作。操作符时可能会创建新的对象,因为String是不可变的。因此,在不同的情况下,选择适当的赋值操作符是很重要的。= 是一种常规的赋值操作,这种写法会创建一个新的对象来保存结果,并重新分配内存空间。原创 2024-02-07 11:33:41 · 154 阅读 · 1 评论 -
Java面向对象三大特性:封装、继承、多态
Java面向对象三大特性,封装,继承,多态原创 2024-02-07 09:40:26 · 273 阅读 · 1 评论