java抽象类和接口

抽象类和抽象方法

在java中,对象是由类进行描绘的,但是并不是所有的类都可以new对象,如果一个类不能实例化对象,我们把这种类称为抽象类。
抽象方法是抽象类中的一个特别的成员方法,抽象方法特点是没有方法体;
抽象类和抽象方法都要用abstract修饰

abstract class Animal{			//抽象类
	public abstract void run(); / /抽象方法没有方法体
}
class Dog extends Animal{
	public void run(){				//抽象方法的实现
	}
}
抽象类的特征:
  1. 不能实例化对象,抽象类必须被继承才能用,
  2. 一个类只能继承一个抽象类(只能单继承)
  3. 抽象类的修饰符不能是private(privat不能被继承)
抽象方法:
  1. 抽象类中不一定由抽象方法,但是有抽象方法的类一定是抽象类。
  2. 构造方法,static修饰的方法不能修饰为抽象方法
  3. 抽象类的最后一个子类必须实现抽象类中的的所有抽象方法。多层次继承,抽象类的继承也可以是一个抽象类。
  4. 抽象方法的修饰符不能是private
接口

在java中,我们只能使用单继承,那么想要同时使用多个类的方法该怎么做呢,这就要用到接口了。
抽象类不一定全是抽象方法,还可以有一些自己的方法和属性,但是在接口中,只能存在抽象方法。

接口是若干常量和抽象方法的集合

接口是比抽象类更抽象的抽象类。接口规定一个类必须做什么而不管它如何去做。
接口中的成员变量默认修饰是public static final,所以在定义时可以省略。

接口的特性:
  1. 接口只定义抽象方法。默认修饰符pubilc abstract。
  2. 接口中不能定义变量,静态方法,非抽象的方法。
  3. 接口没有构造方法,也不能被实例化。
  4. 接口不能实现另一个接口,但是类可以实现多个接口。
接口的使用:
  1. 接口必须通过类来实现他的方法。
  2. 如果一个类不饿能实现完接口中的抽象方法,也就是还有抽象方法。那么我们应该将之定义为抽象类。
  3. 不能创建接口的实例,但是可以定义接口类型的引用变量引用实现接口类的实例
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值