java内部类.this,,.new 局部内部类

本文深入探讨Java内部类的使用方式,包括如何从内部类访问外部类的方法和变量,以及局部内部类的创建与使用。通过具体代码示例,展示了内部类和局部内部类的特性及其在实际编程中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

package equality;

public class DoThis {
	void f(){System.out.println("DoThis.f()");}
	public class Inner{
		public DoThis outer(){
			return DoThis.this;//如果需要生成对外部类的引用就可以这样
			//外部类的名字加.this
		}
	}
	public Inner inner(){
		return new Inner();
	}
	public static void main(String[] args){
		DoThis dt=new DoThis();
		DoThis.Inner dti=dt.inner();
		dti.outer().f();
	}

}

```]
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190118201955819.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxNjQ4MDky,size_16,color_FFFFFF,t_70)

public class ProgramMain {

public int age;
public void say(){
	String name="pwd";
	class innerClass{
		public void hello(){
			System.out.println(name+"你好");//可以使用外部成员方法中的变量
			
		}
		
	}
	innerClass tClass=new innerClass();//局部内部类和内部类不一样,不能直接New出来,
	//因为他的作用域就是在这个方法中所以可以在方法里面new出来
	tClass.hello();
	System.out.println("这个方法中包含局部内部类");
}
public static void main(String[] args){
	ProgramMain a=new ProgramMain();
	
	a.say();
}

}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值