12-继承、super、this、抽象类

继承

现实生活中的对象具备共同的特性,例如,教师和学生都是人,都具有人的共性,例如姓名、年龄等,这样,我们就可以先定义人这一类,然后让教师和学生继承人的这些特性,从而可以代码复用
格式

class People {
	...
}

class Teacher extends People {
	...
}

用extends关键字即可实现继承
注意事项:
java中的继承是单继承,也就是说,一个类只能继承一个父类

重写override

如果子类的成员方法和父类的成员方法重名,就叫做重写,调用时,符合以下规则:
new的是谁,就调用谁的成员方法
例如下列代码,此时Teacher类中有work方法,Employee中有work方法,优先调用Teacher的work方法

Teacher teacher = new Teacher();
teacher.work();

重写时,可以在重写的方法前加上@override用于确认是否是重写

@Override
public void work(){
	...
}

构造方法

在子类的构造方法中,可以用super([参数列表])访问父类的构造方法
备注:无参构造默认赠送super();

class Employee {
	public Employee(){
	}
}

class Teacher extends Employee {
	public Teacher() {
		super()
	}
}

访问父类成员变量/方法

如果在本类中想要访问父类的成员方法,可以用super.成员方法的方式进行访问

class Employee {
	public void method() {
	}
}

class Teacher extends Employee {
	@Override
	public void method() {
		super.method()
	}
}

this

this除了可以访问本类的成员变量、本类的成员方法外,还可以访问本类的构造方法

class Teacher {
	String name;

	public Teacher() {
		
	}

	public Teacher(name) {
		this();
	}
}

内存图解

在这里插入图片描述

抽象类

部分类的方法无法描述,比如动物的eat方法,知道动物吃东西,但不知道吃什么,也就是说,知道动物类有这个方法,但是方法体是什么不知道,此时可以用abstract创建抽象类和抽象方法
具体创建方式如下所示

public abstract class animal {

	public abstract eat();
}

注意事项:
抽象方法只能在抽象类中
抽象类不能创建对象
抽象类不一定有抽象方法,但是有抽象方法的一定是抽象类

实现类

通过使用子类继承抽象类,并对抽象类的所有抽象方法进行重写之后,该类才能成为一个实现类。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值