抽象类
抽象类,什么是抽象类,用字面意思理解就行,抽象的一个类,或者是抽象的描述的一个类,比如:动物,人,手机。这些东西概念太广,包含的东西太多,我们就可以定义为抽象类。
概述:
在java中,一个没有方法体的方法应该定义为抽象方法,而类中如果有抽象方法,该类必须定义为抽象类。
特点:
1.抽象类和抽象方法必须使用abstract关键字修饰
2.抽象类中不一定有抽象方法,有抽象方法的类一定是抽象类
3.抽象类不能实例化,但是可以通过子类实例化,这叫抽象多态
4.抽象类的子类要么重写抽象类中所有抽象方法,要么就是抽象类
成员特点:
成员变量
1.可以是变量
2.也可以是常量
构造方法
1.有构造方法,但是不能实例化
2.用于子类访问父类数据初始化
成员变量
1.可以有抽象方法:限定子类必须完成某些动作
2.也可以有非抽象方法:提高代码的复用性
接口
概述:
接口就是一种公共的规范标准,只要符合规范标准,大姐都可以使用,java中的接口更多体现在对行为的抽象。
特点:
1.接口用关键字interface修饰 ( pulic interface 接口名{} )
2.类实现接口用==implements ==修饰(public class 类名 implements 接口名{} )
3.接口不能实例化,只能通过实现类进行对象实例化,这叫接口多态
4.接口的实现类
要么重写接口中的所有抽象方法
要么是抽象类
成员特点:
成员变量
1.只能有常量
2.接口成员变量默认被 public static final 修饰
构造方法
1.接口没有构造方法,因为接口主要是对行为进行抽象的,是没有具体存在
2.一个类如果没有父类,默认继承Object类
成员方法
1.只能是抽象方法
2.接口成员方法默认被 public abstract修饰
类和接口的关系:
1.类和类的关系
继承关系, 只能单继承 ,但是可以多层继承
2.类和接口的关系
实现关系,可以单实现,也可以多实现,还可以在继承一个类的同时实现3.多个接口
接口和接口的关系
继承关系,可以单继承,也可以多继承



