java 内部类
2013-10-25 11:22
387 查看
1、创建内部类对象
(1)通过外部类的方法返回内部类对象。
(2)通过外部类对象创建内部类对象。
2、内部类属性、方法与外部类同名时调用外部类的属性方法
(1)通过给内部类中传入外部类对象调用外部类属性、方法。
(2)直接用外部类名的方式调用外部类属性、方法。
(1)通过外部类的方法返回内部类对象。
(2)通过外部类对象创建内部类对象。
2、内部类属性、方法与外部类同名时调用外部类的属性方法
(1)通过给内部类中传入外部类对象调用外部类属性、方法。
(2)直接用外部类名的方式调用外部类属性、方法。
package test; public class Out { private String name; public void doSomething(){ System.out.println("out"); } public Out(String name){ this.name = name; } public In getIn(){ //传入外部类对象给内部类,以便调用同名属性、方法 return new In(this); } public class In{ private String name; private Out out; public In(Out out){ this.out = out; } public void doSomething(){ System.out.println("in"); } public String getOutName1() { Out.this.doSomething(); return Out.this.name; } public String getOutName2(){ out.doSomething(); return out.name; } public String getOutName3(Out out){ out.doSomething(); return out.name; } public String getInName(){ doSomething(); return name; } } public static void main(String[] args) { /** * 实例化内部类的2种方法 */ // 1、通过外部类的方法返回内部类的对象 Out out = new Out("yym"); In in = out.getIn(); // 2、通过外部类对象创建内部类对象 Out out1 = new Out("yym1"); In in1 = out1.new In(out1); /** * 内部类属性、方法与外部类同名时, */ // 1、将外部类对象传入内部类,通过外部类对象调用。 System.out.println(in.getOutName2()+"\n"); System.out.println(in.getOutName3(out1)+"\n"); // 2、直接用外部类名.this.属性名调用。 System.out.println(in1.getOutName1()+"\n"); } }
相关文章推荐
- Java基础之接口、内部类
- Java 内部类的实例化
- 一个.java源文件中可以有多个类吗?(内部类除外)有什么条件?
- Java语法总结 - 内部类
- java匿名内部类的使用场景
- JAVA——内部类
- JAVA10:内部类初步
- Bravo!Java学习笔记(1)---接口、抽象类、对象克隆、内部类
- java 内部类(一)
- java封装中的内部类
- java笔记(四)[java中的import关键词&java中的javadoc用法及注释说明&java中的final关键字&java中的内部类详解]
- JAVA 内部类(成员内部类、局部内部类、匿名内部类)、异常处理、finally
- java的内部类和匿名类剖析
- Java语法总结 - 内部类
- Java的内部类和匿名内部类
- java的内部类与匿名类
- java编程思想笔记--内部类部分六
- java提高篇(八)----详解内部类
- Java 内部类
- Java四种内部类