Java内部类

public class OuterClass{//外部类
       private class InnerClass{}//内部类
}

一.定义

   放在一个类的内部的类我们就叫内部类。

二.作用

   1.内部类可以很好的实现隐藏,也就是封装性。一般的非内部类,是不允许有 private 与protected权限的,但内部类可以

   2.内部类拥有外围类的所有元素的访问权限

   3.可是实现多重继承(这个特点非常重要,个人认为它是内部类存在的最大理由之一)

   4.可以避免修改接口而实现同一个类中两种同名方法的调用

三.多重继承的实现

多重继承,指的是一个类可以同时继承多个父类的行为和特征功能。

(Java实现多重继承一般使用接口)

类一    

public   class  Example1 {    
   public  String getName()  {  
       return   "luffyke" ;  
    }  
} 

类二

public   class  Example2 {        
       public   int  getAge()  
       {  
            return   25 ;  
       }  
}  

类三

public class MainExample {

    public class Test1 extends Example1 {
        public String getName() {
            return super.getName();
        }
    }

    public class Test2 extends Example2 {
        public int getAge() {
            return super.getAge();
        }
    }

    public String showName() {
        return new Test1().getName();
    }

    public int showAge() {
        return new Test2().getAge();
    }

    public static void main(String args[]) {
        MainExample example = new MainExample();
        System.out.println("姓名:" + example.showName());
        System.out.println("年龄:" + example.showAge());
    }
}   

    类三里面分别实现了两个内部类 Test1,和Test2 ,Test1类又继承了Example1,Test2继承了Example2,这样我们的类三MainExample就拥有了Example1和 Example2的方法和属性,也就间接地实现了多继承。

 另外参见Java匿名内部类

原文地址:https://www.cnblogs.com/tech-bird/p/3650069.html