Java抽象

抽象类

被abstract修饰词修饰的类叫做抽象类
抽象类的定义:abstract class 类名{}
抽象类的特点:
1.抽象类无法被实例化
2.子类继承抽象类再实例化
3.子类继承了抽象类必须实现抽象类的中的抽象方法


抽象方法

被abstract修饰词修饰的方法叫做抽象方法,抽象方法的作用在于为所有子类定义一个统一的接口。注意,抽象方法只需声明,而不需要实现,用“;”而不是“{}”
抽象方法的定义:abstract 返回类型 方法名();


抽象类中可以不包含抽象方法,但是一旦某个类中定义了抽象方法,那么这个类只能声明为抽象类(即抽象方法只能定义在抽象类中)。
抽象方法在子类中必须被实现,否则子类仍然是抽象类,不可实例化。


eg:

abstract class C{
	abstract void callme( );
	void metoo( ){
		System.out.println("Inside C's metoo( ) method");
	}
}
 
class D extends C{
	void callme( ){
		System.out.println("Inside D's callme( ) method");
	}
}
	 
public class AbstractTest{
	public static void main( String args[ ] ){
		C c = new D( );
		c.callme( );
		c.metoo( );
	}
}

运行结果为:
在这里插入图片描述


抽象在java中的意义

当父类知道子类应该包含什么样的方法,但无法确定子类如何实现这些方法时,就需要定义一个抽象类。
抽象类相当于是一种规范,它里面的抽象方法规定了所有的子类中都必须有这些方法, 所有的抽象方法都必须要被重写(override)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值