java中的内部类

    xiaoxiao2021-03-25  198

    内部类有四种:静态内部类,成员内部类,局部内部类,匿名内部类

    class outerClass{

         static class innerClass{}//静态内部类:不依赖于外部类实例而被实例化,与成员内部类的差别在于:通常的内部类需要在外部类实例化之后才能被实例化,(静态内部类不能和外部类有相同的名字,不能访问外部类的普通成员变量,只能访问外部类的静态成员和静态方法(包括私有类型))

    }

    class outerClass{

          class innerClass{}//成员内部类(普通的内部类):可以自由的引用外部类的属性和方法,无论是静态的还是非静态的,与一个实例绑定在一起,不可以定义静态的属性和方法。只要在外部类被实例化后,这个内部类才能被实例化

    }

    class outerClass{

       public void menberFunction(){

         class innnerClass{}//局部内部类:定义咋一个代码块中,作用范围是在所在的代码块中,很少使用    }

    }

    public  class MyFrame extends Frame{//外部类

        public MyFrame(){ 

             addWindowListener(new WindowAdater(){//匿名内部类:没有类名的内部类,不使用关键字class、extends、implements、没有构造函数,但是必须继承其他类或者实现接口。好处在于代码变得更加简洁紧凑,易读性比较差,一般会用于GUI

               public void windowClosing(WIndowExent e){

                dispose();

               System.exit(0);

             }

            }

           

           );  

    }

    }

    转载请注明原文地址: https://ju.6miu.com/read-492.html

    最新回复(0)