各位大神我今天遇到了一个奇怪的问题求解!!!
情况是这样的
比如有一个实现类 public class Dog extends Pet implements print
现在前面加了一个abstract 变成 public abstract class Dog extends Pet implements print
奇怪的是里面既可以写抽象方法又可以写实现方法!!!
抽象方法不是只能写方法体么,为什么这种情况能写实现方法呢!!
求解!!!
...全文
25711打赏收藏
关于servlet的一个小问题
各位大神我今天遇到了一个奇怪的问题求解!!! 情况是这样的 比如有一个实现类 public class Dog extends Pet implements print 现在前面加了一个abstract 变成 public abstract class Dog extends Pet implements print 奇怪的是里面既可以写抽象方法又可以写实现方法!!! 抽象方法不是只能写方法体么,为什么这种情况能写实现方法呢!! 求解!!!
public abstract class Dog extends Pet implements print只是规定了这个类是个抽象类。
抽象类和接口类似,都是不可以自身实例化的一种结构封装。不同在于接口所有的方法都没有实现,只是定义了实现类必须实现的方法名称、参数和返回类型。而抽象类,它里面的抽象方法才是与接口方法相似的必须由子类必须实现的方法,如果子类不实现,子类也会被视为抽象类而不能实例化。但是抽象类里面的非抽象方法与具体的类中的方法相同,都是可以执行具体逻辑的方法,一般是所有继承类的公用方法,用于做一些最基本的事情,这是他与接口最大的不同,要是抽象类里面所有的方法都只能是抽象的,它就沦为接口类了。