接口和抽象类的区别
一.从声明上
1.抽象类是一个类,使用class声明,还须使用abstract修饰;
2.接口不是一个类,使用interface声明;
二.从能够书写的成员上看
1.抽象类是一个类,类可以书写成员,抽象方法和非抽象方法;
2,接口只能书写成变量和抽象方法,而且修饰符是固定的;
三.从有无构造函数
1.抽象类必须有构造函数;
2.接口没有构造函数;
四.从作用上看
1.抽象类是父类,用来描述子类的共性信息,只是描述的有些功能不具体;
2.接口是用来描述不属于继承的扩展功能,还可以定义规则;