接口存在的意义就是为了使子类能够继承,接口里的属性全部为final类型的(接口里的属性是为了使子类调用,为了避免子类修改该属性设置成final类型),而方法全部为abstract类型的。接口不能被实例化,因为实例化的就要在内存中分配内存,而接口里有为实现的抽象方法,不知道该分配多大的内存,因此不能被实例化。同样抽象类也是。
抽象类里可以有非抽象方法,而含有抽象方法的类一定是抽象类。抽象类同样不能被实例化,但是抽象类可以有自己的构造函数,而该构造函数必须显示的被子类调用。抽象类里的属性可以为非final类型,如果想要修改该属性的值,必须的从子类显示的调用父类的构造方法进行赋值。super.xx