抽象类
在解决问题的时候一般将父类定义为abstract类型的,也就是抽象类,在抽象类中可以定义抽象方法也可以定义非抽象方法;此外,在多态机制中,一般不从父类得到类对象,所以抽象类不能实例化对象是有一定道理的;此外如果一个类中的某个方法定义为了abstract类型的,那么这个类就必须定义为abstract类型的;
接口:
说白了接口就是纯粹的抽象类,在接口中任何方法都不能有方法体(在抽象类中方法可以有方法体,也即是可以不定义为abstract类型的),当然了,接口也不能通过new方法得到对象,因为这样也是没有意义的,我们定义接口是为了实现子类,所以一般是得到子类的对象,这是通过接口得到对象就没什么意义了,也是不允许的;