内部类

/*
内部类:就是类中的类
1.它可以直接访问外部的成员变量及成员方法,包括私有的。因为在调用的成员前面包含外部类名.this;
2.外部类不可以直接访问内部类的成员,必须在外部类中创建对象,然后用对象访问的方法访问;

内部静态类:
内部静态类只能访问外部类的静态成员,如果类中也有同名的,则用外部类名.变量指明;
*/
class InnerClassDemo 
{
	public static void main(String[] args) 
	{
	 OutClass out=new OutClass();
	 out.method();
	 //访问静态内部类的非静态方法
	 new OutClass.InnerClass().function();
	 //访问静态内部类的静态方法
	 OutClass.InnerClass.function();
	}
}
class OutClass
{
	static int num =2;
	static void test()
	{
		System.out.println("访问外部类中的静态成员方法");
	}
	static class InnerClass
	{
		//int num=3;
		static void function()
		{
			//int num=4;
			OutClass.test();
		    System.out.println("Inner:"+OutClass.num);
		}    
	}
	void method()
	{
		//通过创建对象访问;
		InnerClass inner=new InnerClass();
		inner.function();
		int num=123;
	    class InnerClass2
		{
			
			void show()
			{
				System.out.println("成员内部类:"+num);
			}
		}
		new  InnerClass2().show();
		//直接访问;
		//OutClass.InnerClass in=new OutClass().new InnerClass();
		//in.function();
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值