您的位置:首页 > 编程语言 > Java开发

JavaSE 学习参考:成员内部类

2017-03-19 00:00 288 查看




内部类

内部类是定义在类的内部的类,其所在的类称为外部类。内部类分为成员内部类和静态内部类

成员内部类

成员内部类是依赖于外部类的,其对象可以访问外部类的成员变量和方法,其目的是为外部类提供复合成员数据和算法,例如List接口的实例类都提供了遍历元素的迭代器,这些迭代器都是实现了Iterator接口的位于List接口实现类的内部或方法中。成员内部类不能独立实例化,必须通过外部类的对象才能实例化,如下例的代码:

Outter.Inner in=out.new Inner();

其中out是外部类的对象。

package d;

class Outter{
int value;
public int getValue(){
return value;
}
public void setValue(int value){
this.value=value;
}

@Override
public String toString() {

return "Outter.value="+value;
}

class Inner {
int val;

public int getVal() {
return val;
}

public void setVal(int val) {
this.val = val;
}
public void setOutterVal(int v) {
value=v;//访问外部类成员变量
}
public String toString() {

return "Inner.val="+val;
}
}
}
public class Demo {
public static void main(String[] args) {
Outter out=new Outter();
out.setValue(100);
System.out.println(out);
Outter.Inner in=out.new Inner();
in.setVal(50);
System.out.println(in);
in.setOutterVal(200);
System.out.println(out);
}

}

运行程序,结果如下图所示:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息