天天看点

Java——抽象类与接口

啥是抽象类? 抽象类是它的所有子类的公共属性的集合,是包含一个或多个抽象方法的类。抽象类可以看作是对 类的进一步抽象。 抽象类则是对多个类的抽象结果,抽象类进一步描述了多个具体 类的共同特征和行为。 这个解释真的是有够抽象的(bushi)怪不得叫抽象类。 抽象类简单理解,就是这个对象是什么。人和狗的抽象类都是动物。抽象类除了不能实例化对象之外, 类的其它功能依然存在,成员变量、成员方法和构造方法的访问方式和普通类一样。 由于抽象类不能实例化对象,所以抽象类必须被继承,才能被使用。 这里需要注意的是抽象类的修饰符必须为 public 或者 protected ,不能是 private ,因为创建抽象类,就是要被其他类继承,用private 修饰了,则不能被子类继承,子类便无法实现该方法。如下方所示: Modifies abstract class ClassName { … }

抽象方法:

如果是实现一种方法,其具体内容由子类决定,就是抽象方法了。抽象方法只有声明,没有具体的实现: 如果一个类包含抽象方法,那么该类必须是抽象类。 任何子类必须重写父类的抽象方法,或者声明自身为抽象类。 abstract void method (); 啥是接口? 这就是比抽象类更为抽象的存在了~抽象类是对类的抽象,接口是对行为的抽象。 示例代码: public interface Eat { public void willEat ();         } public interface WatchDoor { public void willWatchDoor ();         } public interface Think { public void willThink ();         } public class Dog implements Eat , WatchDoor { @Override public void willEat () { System . out . println ( " 我会吃 " );         } @Override 接口的主要功能是对于行为的继承。 真是一篇抽象的笔记~