抽象类

1.定义格式:

public abstract class 类名{                  //抽象类
public abstract void 方法名();//定义抽象方法,抽象方法没有方法体。
}

*2.用法:

1.使用abstract修饰的类或方法称为抽象类或抽象方法。
2.抽象类中不一定要有抽象方法,即可以有抽象方法,也可以有普通方法。
3.抽象类不能被实例化,只能通过子类重写抽象方法,进行使用抽象方法。
4.抽象方法一定是公共的(public),以便能被子类重写。
5.抽象类中,可以有包含具体的方法和变量。
6.子类可以是普通类也可以是抽象类。但子类必须重写父类中的所有抽象方法。如果不全部重写,则子类需要定义为抽象类。

抽象方法:
1.抽象方法一定存在抽象类中。
2.抽象方法没有方法体。即没有“{}”。

3.案例:

 class  person
{
	public static void main(String[] args) 
{
	people p = new teacher("老师");      //父类引用指向子对象,编译看左边,执行看右边
	p.work();
	people p1 = new driver("驾驶员");   //父类引用指向子对象
	p1.work();
}
}

abstract class people           //抽象类
{
	public abstract void work();   //抽象方法不需要方法体{}
}

class teacher extends people
{
private String work;
public teacher(String work)         //有参构造
{
	this.work = work;	
}
public void work()              //父类方法重写
{
	System.out.println("我的职业是:" + this.work);
}
}

class driver extends people
{
private String work;       
public driver(String work)      //有参构造
{
	this.work = work;	
}
public void work()         //父类方法重写
{
	System.out.println("我的职业是:" + this.work);
}
}

运行结果:

 我的职业是:老师
 我的职业是:驾驶员
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值