接口和抽象类的区别?
区别1
抽象类是一个类,接口是一个接口,两者的概念和应用场景不同,这也是抽象类和接口的主要区别。
区别2
接口可以写实现方法,但不能写构造方法,而抽象类是可以写构造方法的,意味着抽象类是参与类实例化过程的,而接口不是。
区别3
抽象类可以有自己的各种成员变量,并且通过自己的非抽象方法进行改变,而接口中的变量默认全是public static final修饰的,意味着都是常量,并且不能被自己和外部改变。
区别4
接口可以实现多继承,而抽象类只能单继承
类与类只能单继承,而类与接口,接口与接口可以多继承。
普通类和抽象类的区别?
普通类不能包含抽象方法,抽象类可以包含抽象方法
抽象类不能直接实例化,普通类可以直接实例化。