抽象类

抽象类可以理解为看不懂的类
抽象类的特点
抽象类和抽象方法必须用abstract关键字修饰
(abstract class 类名 { })
public abstract void eat();
抽象类不一定有抽象方法,有抽象方法的类一定是个抽象类或者是接口
抽象类不能实例化,(就是不能new)那么如何进行抽象类实例化?
由具体的子类实例化。其实这也是多态的一种,抽象类多态
抽象类的子类(要么是抽象类,要么重写抽象类中的所有抽象方法)

package lesson08;

public class demo01 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		Cat cat = new Cat();
		cat.eat();
		cat.sleep();
		Dog dog = new Dog();
		dog.eat();
		dog.sleep();
		
		TangLaoYa tanglaoya = new TangLaoYa();
		tanglaoya.eat();
		

	}

}

abstract class Animal{
	//抽象方法,抽象方法不实现,也就是不要写{} 
	public abstract void eat();
	public abstract void sleep();
}
//The type Cat must implement the inherited abstract method Animal.eat()
//猫这个类,必须要实现Animal的抽象方法eat
class Cat extends Animal{

	@Override//子类重写父类的方法
	public void eat() {
		// TODO Auto-generated method stub
		System.out.println("吃饭。。");
		
	}
	public void sleep() {
		System.out.println("卧着睡。。。");
	}
	
}
class Dog extends Animal{

	@Override
	public void eat() {
		// TODO Auto-generated method stub
		System.out.println("吃饭啃骨头");
	}
	public void sleep() {
		System.out.println("躺着睡");
	}
}

abstract class Duck extends Animal{
	
}

class TangLaoYa extends Duck{

	@Override
	public void eat() {
		// TODO Auto-generated method stub
		System.out.println("吃虫子");
	}

	@Override
	public void sleep() {
		// TODO Auto-generated method stub
		System.out.println("趴着睡");
		
	}
	
}







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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值