java继承

继承,子类可以拥有父类的属性,但如果父类中修饰的是private属性,则不能拥有


语法规则

java继承_第1张图片

public class second extends first{
方法的重写 函数形式写成和父类中的要重写的函数形式一样即可

java继承_第2张图片

继承的顺序 先初始化父类的,再初始化子类的 先执行初始化对象,再执行构造方法中的初始化

final关键字 修饰的 类不能被继承 方法不能被重写 属性相当于常量 而且属性必须得有值,要么在类中初始化值,要么在赋值过程中直接赋值

final public class first
super关键字,调用父类的属性和方法,在子类的构造方法中,默认使用了父类的构造化方法super()

object 类 java中所有的类都默认继承自object类,在打印对象时,默认打印出报名加对象的地址,可以通过重写toString()方法,来输出包名加属性值

通过source 中的 generate toString()方法 可以来进行重写

public String toString() {
	return "first [a=" + a + "]";
}
object类中的eqeal方法,默认来比较对象间的地址,可以通过source中的generate hashCode() and eqeals() 来进行重写 比较对象 并且比较对象间的属性

	@Override
public int hashCode() {
	final int prime = 31;
	int result = 1;
	result = prime * result + a;
	return result;
}
@Override
public boolean equals(Object obj) {
	if (this == obj)
		return true;
	if (obj == null)
		return false;
	//类对象 来判断类型
	if (getClass() != obj.getClass())
		return false;
	first other = (first) obj;
	if (a != other.a)
		return false;
	return true;
}
getClass表示拿到类对象,更关心类的属性,而平常创建的对象就是类的对象,更加关心对象的属性值






你可能感兴趣的:(java继承)