这篇文章将为大家详细讲解有关java 中的内部类如何使用,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
java 中内部类的实例详解
一:内部类可直接访问外部类的成员变量,包括外部类私有的成员变量
二:外部类要访问内部类的成员变量,需要建立内部类的对象
class Outer{
int x=110;
public void show(){
System.out.println("外部类的x="+x);
}
public void showInner(){
Inner inner=new Inner();
inner.show();
System.out.println(inner.x);
}
class Inner{//内部类
int x=220;
public void show(){
System.out.println("内部类的x="+x);
}
}
}
public class OuterDemo {
public static void main(String[] args) {
Outer outer=new Outer();
outer.show();
outer.showInner();
Outer.Inner outerInner=new Outer().new Inner();//特殊情况.外部类直接访问内部类成员变量
outerInner.show();
}
}
内部类之所以可以直接访问外部类的成员变量,是因为内部类持有外部类的引用。格式:外部类名.this
如:System.out.println("x="+Outer.this.x);//访问外部类的x
class Outer{
int x=110;
class Inner{
int x=220;
public void show(){
int x=330;
System.out.println("x="+x);//访问show()中的x
System.out.println("x="+this.x);//访问内部类的x
System.out.println("x="+Outer.this.x);//访问外部类的x
}
}
void showInner(){
Inner inner=new Inner();
inner.show();
}
}
public class OuterDemo {
public static void main(String[] args) {
Outer outer=new Outer();
outer.showInner();
}
}
在内部类(一)和内部类(二)中,内部类都是作为全局变量出现的即定义在了类里 ,在此奖内部类定义为局部变量,即定义在方法里.尤其注意:此时内部类要想访问局部变量,那么此 局部变量必须是被final修饰的,如此处的y
package cn.com;
class Outer {
int x = 110;
public void show() {
final int y=99;
class Inner {// 内部类
int x = 880;
public void showInner() {
System.out.println("局部变量y=" + y);
}
}
new Inner().showInner();
}
}
public class OuterDemo {
public static void main(String[] args) {
Outer outer = new Outer();
outer.show();
}
}
关于java 中的内部类如何使用就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。