
面向对象讲完之后就是API,也就是我们现在要说的这些,这里面我们会接触大量的方法,只有多看多用,你才能记住,下面我们就来说一下常用的类。
Objec是Java中的顶级父类,Java中所有的类都默认直接或者间接的继承object。Objec是Java中唯一没有父类的类,任何一个类的对象都可以用Object对象接住。
构造方法中提供的所有构造方法默认是public修饰的。
Object class 中只提供了这么一个无参的构造函数。
克隆对象。克隆完成之后会产生一个新的对象,这个新对象和原对象的地址不同但是属性值是一样的。
一个对象要想被克隆,那么这个对象对应的类必须实现Cloneable接口,Cloneable接口中没有任何的方法和属性,仅仅用于标识这个类产生的对象可以被克隆。
public class T1 implements Cloneable {
int i;
public static void main(String[] args) throws CloneNotSupportedException {
T1 t = new T1();
t.i = 5;
T1 t1 = (T1) t.clone();
System.out.println(t);
System.out.println(t1);
}
}
判断两个对象是否一致。默认比较的是对象的地址,即使用的是==运算符,在开发中要求能够手动重写。Eclipse中右键Sourec中有自动生成。
书写步骤:
1.判断地址是否一样,即直接使用==运算符。
2.判断对象是否为空。
3.判断对象的创建类型是否一致。
4.判断属性值是否一致。判断之前要将对象强转为顶级父类。判断属性值的时候注意String类型的判断。
Public boolean equals(Object obj){
if (this == obj) //1.判断地址是否一致
return true;
if (obj == null) //2.判断参数是否为空
return false;
if (getClass() != obj.getClass()) //3.判断类型是否一致
return false;
Person other = (Person) obj; //4.强制转换类别
if (age != other.age) //5.判断属性是否一致
return false;
if (gender != other.gender)
return false;
if (name == null) {
if (other.name != null)
return false;
} else if (!name.equals(other.name))
return false;
return true;
}
通知gc回收垃圾对象,但是垃圾回收器不一定执行。即使gc开始运行,也只回收当前对象而不回收其他对象。
相似的:System.gc();通知gc回收对象,不限制范围。
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-53988-1.html
找你商量点事呗