您的位置:首页 > 其它

6.4内部类:类作为方法的返回值类型,内部类中使用外部类的引用(或称外部类对象)

2017-09-27 17:10 429 查看
一:

[java] view
plain copy

public class OuterClass {  

    public void
4000
 display(){  

        System.out.println("OuterClass...");  

    }  

      

    public class InnerClass{  

        public OuterClass getOuterClass(){  

            return OuterClass.this;  

        }  

    }  

      

    public static void main(String[] args) {  

        OuterClass outerClass = new OuterClass();  

        OuterClass.InnerClass innerClass = outerClass.new InnerClass();  

        innerClass.getOuterClass().display();  

    }  

}  

-------------  

Output:  

OuterClass... 

       同时如果我们需要生成对外部类对象的引用,可以使用OuterClassName.this,这样就能够产生一个正确引用外部类的引用了。说白了,OuterClassName.this的作用就是产生一个外部类的对象,而那个方法就是返回这个对象,所以可以直接利用。

二:

[java] view
plain copy

public class OuterClass {  

    private String str;  

      

    public void outerDisplay(){  

        System.out.println("outerClass...");  

    }  

      

    public class InnerClass{  

        public void innerDisplay(){  

            //使用外围内的属性  

            str = "chenssy...";  

            System.out.println(str);  

            //使用外围内的方法  

            outerDisplay();  

        }  

    }  

      

    /*推荐使用getxxx()来获取成员内部类,尤其是该内部类的构造函数无参数时 */  

    public InnerClass getInnerClass(){  

        return new InnerClass();  

    }  

      

    public static void main(String[] args) {  

        OuterClass outer = new OuterClass();  

        OuterClass.InnerClass inner = outer.getInnerClass();  

        inner.innerDisplay();  

    }  

}  

--------------------  

chenssy...  

outerClass... 

        在构造内部类的对象时,一般通过传统的:外部类.内部类  内部类对象变量 = 外部类对象.new   内部类();但是上个例子,把“new 内部类()”;给等效替换掉了。注意这种表达方式。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐