抽象方法和抽象类

本文介绍了Java中的抽象类和抽象方法的概念。抽象类是包含抽象方法的类,不能直接实例化,只能用于继承。抽象方法只有声明,没有实现,子类必须实现这些方法。在示例中,`Animal2`是抽象类,`shout()`是抽象方法,而`Dog1`是它的子类,实现了`shout()`方法。在`TestAbstractClass`中,我们创建了`Dog1`的实例并调用了其方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

抽象方法和抽象类

抽象方法:

使用abstract修饰的方法,没有方法体 ,只有声明定义的是一种“规范”,就是告诉子类必须要给抽象方法提供相应具体的方法

抽象类:

包含抽象方法的类就是抽象类,通过abstract方法定义规范,然后要求子类必须具体实现。通过抽象类,我们可以做到严格限制子类的设计,使子类间更加通用。

抽象类的使用要点:

1、有抽象方法的类只能定义成抽象类
2、抽象类不能实例化,即不能用new来实例化抽象类
3、抽象类可以包含属性、方法。构造方法。但是构造方法不能用new实例,只能用来被子类调用
4、抽象类只能用来继承
5、抽象类必须被子类实现

* 抽象类
 */
package cn.wu.oo;

abstract class Animal2 {
	abstract public void shout();//1、有抽象方法的类只有定义成抽象类
                                 //3、抽象类可以包含方法、属性、构造方法,但是不能用来new实例
	                                //只能被子类调用
	                                 
}
class Dog1 extends Animal2{      //4、抽象类只能用来被继承    
	//子类必须实现父类的抽象方法,否则编译错误
	public void shout(){         //5、抽象方法必须被子类实现   
		System.out.println("汪汪汪!");
	}
	public void seeDoor(){
		System.out.println("看门中!");
	}
}


* 测试抽象类
 */
package cn.wu.oo;

public class TestAbstractClass {
	public static void main(String[]args){
		Dog1 a = new Dog1(); //2、抽象类不能实例化,即不能用new实例化抽象类
		a.shout();
		a.seeDoor();
	}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值