浅谈java抽象类与接口
2017-01-30 20:37
176 查看
java中提供了接口和抽象类。浅谈一下!
抽象类:
抽象类可以有抽象方法,也可以有一般方法。我觉得它主要是标记某个类在某一类族中的特性与共有性,或者某一类族的共同性质。比如,人和猪都是哺乳动物,但人的手比猪的蹄子灵活,猪的鼻子比人灵敏。这就是“人”这个类和“猪”这个类的不同特性,而猪和人都会呼吸,这就是共有性。
接口:
接口只能有抽象方法。我觉得接口主要是标记某个类的职责。比如java.awt.event.MouseListener接口,你实现了它,就表示你这个类的职责是当鼠标单击触发时,做一些什么操作。调用处只需要调用就行,至于你是怎么执行的,我不关心。如果出现了异常,对不起,交给jvm来处理,看下代码`
抽象类:
抽象类可以有抽象方法,也可以有一般方法。我觉得它主要是标记某个类在某一类族中的特性与共有性,或者某一类族的共同性质。比如,人和猪都是哺乳动物,但人的手比猪的蹄子灵活,猪的鼻子比人灵敏。这就是“人”这个类和“猪”这个类的不同特性,而猪和人都会呼吸,这就是共有性。
接口:
接口只能有抽象方法。我觉得接口主要是标记某个类的职责。比如java.awt.event.MouseListener接口,你实现了它,就表示你这个类的职责是当鼠标单击触发时,做一些什么操作。调用处只需要调用就行,至于你是怎么执行的,我不关心。如果出现了异常,对不起,交给jvm来处理,看下代码`
interface USB{ public void onWork(); } class UDisk impelement USB{ @Override public void onWork(){ System.out.print("U 盘插上了"); } class Mouse impelement USB{ @Override public void onWork(){ System.out.print("鼠标工作了"); } main方法:(不想写那么多,自己脑部main方法的定义吧!) USB usb = new UDisk(); usb.onWork();//U盘开始工作 usb = new Mouse(); usb.onWork();//鼠标工作 /***** 可以看出接口就是在标记类的职责,就像老师布置作业,只要布置了检查就行,至于你怎么做,老师不关心,如果你水作业,就相当于出异常,老师会把你交给家长,就像异常被jvm捕获 *****/ }