一、包
java.lang包,属于java中的核心包,系统默认导入的,不用手动导入
该包中的类:Object、System、String、Integer等
1、包的好处
①分类管理java文件,查找和管理方便
②解决了同一个项目中同名类的问题
2、包的创建
①新建class的同时指定包
②新建package
③强制添加包的声明
3、包的命名
遵循标识符的命名规则:包含数字、字母、下划线、$符号,不能用数字开头,不能是关键字,标识符和标识符之间使用小圆点分割
命名规范:遵循域名倒置的写法
com.公司名.业务模块名
常见的业务模块名:view视图、domain/bean/pojo实体类、service业务
4、包的声明和导入
(1)声明
语法:package 包名;
位置:放在class的最上面
个数:至多有一个
(2)导入
语法:import 包名.类名;或import 包名.*;
位置:package——import——class
个数:可以有多个,没有顺序要求
二、Object类说明
Object类是java中的根类,所有对象都继承了Object类,具备该类的方法
三、创建Object对象
new Object();
注意:一般不需创建Object本类对象,因为可以通过创建子类对象,调用里面的方法
四、常见方法 ★
1、equals
(1)说明:判断两个对象是否相等
(2)原型:
public boolean equals(Object obj){
return this==obj;
}
(3)==和equals的对比
== 如果判断引用类型,比较的是地址;如果判断基本类型,比较的是值。注意:左右的操作数的类型必须一致或兼容
equals 只能判断引用类型,默认比较的是地址,子类可以重写该方法用于比较内容
(4)如何重写equals ★
public boolean equals(Object o){
if(this == o)
return true;
if(!(o instanceof XX))
return false;
XX t = (XX)o;
return this.name.equals(t.name);//返回具体的比较逻辑
}
2、toString
(1)说明:返回对象的字符串形式
(2)原型:
public String toString(){
return getClass().getName()+'@'+Integer.toHexString(hashCode());
}
(3)特点:默认返回的字符串不好理解,子类往往重写该方法,用于返回对象的属性信息
(4)好处:打印方法和拼接字符串时,将默认调用对象的toString方法
3、hashCode
(1)说明:返回对象的哈希码值
(2)好处:一般用于提高哈希表结构容器的查找性能
(3)特点:对象的哈希值不需要关心,大致等于 对象的地址号。所以:不同对象的哈希值肯定不一样
4、finalize
(1)说明:当对象被回收时,系统自动调用该方法
(2)垃圾回收机制:
回收的对象:无用对象
无用的对象:没有任何引用指向的对象
回收的时机:随机的,不确定