1、18.面向对象高级(06)本季要点:讲解抽象类与接口的关系。本季讲解了java中关于抽象类与接口的具体区别,同时讲解了两者的一些其他联系。之后讲解了模板设计模式、代理设计模式,最后又重点强调了抽象类和接口之间的关系blog:[零基础学JAVA]JavaSE面向对象部分-18.面向对象高级(06)2009-02-08上季内容回顾:1、面向对象中接口与抽象类的具体应用。 可以通过对象的多态性,为父类实例化,之后一切的操作标准以父类为主。本季主要知识点:讲解抽象类与接口的关系。1、一个抽象类中能否包含一个接口呢?abstract class
2、 A { public abstract void fun(); interface B { public void print(); } }我们来验证测试下哈~发现生成A$B.class,表示B作为A的内部接口,证明一个抽象类中可以包含一个内部接口。那怎么使用呢?我们看下面哈~首先我们先子类X覆写父类A方法但不覆写接口B中的方法abstract class A { pub
3、lic abstract void fun(); interface B { public void print(); } } class X extends A { //覆写父类fun()方法 public void fun() { System.out.println("HelloWorld!!!");
4、 } }发现编译没有问题哈~现在我们测试覆写接口方法哈~abstract class A { public abstract void fun(); interface B { public void print(); } } class X extends A { //覆写父类fun()方法 public void fun(
5、) { Bb= new Y(); b.print(); } class Y implements B { //覆写父类接口中的方法print() public void print() { System.out.println
6、("HelloJava!!!"); } } }现在我们加上主方法进行测试哈~abstract class A { public abstract void fun(); interface B { public void print(); } } class X extends A { //覆写父类fu
7、n()方法 public void fun() { Bb= new Y(); b.print(); } class Y implements B { //覆写父类接口中的方法print() public void print() {
8、 System.out.println("HelloJava!!!"); } } } public cla