内部类 ( Inner Class )

Posted chen--biao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了内部类 ( Inner Class )相关的知识,希望对你有一定的参考价值。

内部类的作用:

  1、隐藏内部实现,高内聚。

  2、Java多继承的实现。

 

何为Java的多继承?

Java只支持单一继承,所以如果需要多继承,那么可用内部类来实现。

 

如何实现?

  1、父类A

    public class A {

      public int age(){

        return 1;

      }

    }

  2、父类B

    public class B {

      public String name(){

        return "张三";

      }

    }

  3、内部类的包含类 C

    public class C extends OtherDEFClass{

      private class EA extends A {   //继承类A,可有选择的覆盖父类方法。

        public int age(){

          return  super()+1;

        }

      }

      private class EB extends B {    //继承类B

        public String name(){

          return super()+"EB";

        }

      }

      

      public int age(){

        return  new EA().age();  //可添加自己需要的额外处理

      }

      public String name(){

        return new EB().name();

      }

    }

此时,调用类C的age方法或者name方法,就可调用到内部类中的具体方法了。

 

使用的思考:

  1、隐藏内部实现。

  2、配合模板方法进行使用。

 

以上是关于内部类 ( Inner Class )的主要内容,如果未能解决你的问题,请参考以下文章

Java | 内部类(Inner Class)

Java面试题11 什么是内部类?Static Nested Class 和 Inner Class的不同。

什么是内部类? Static Nested Class 和 Inner Class 的不同。

用JAVASSIST如何得到一个类中所有的内部类(inner class)?

什么是实例内部类 Instance inner class有什么语法?

内部类(嵌套类)