java 外部调用内部类的方法

1.使用static可以声明一个内部类, 可以直接在外部调用
class Outer { // 定义外部类
	private static String info = "hello world";
	// 定义外部类的私有属性

	static class Inner {
	// 使用static定义内部类为外部类
		public void print() { 
		// 定义内部类的方法
		System.out.println(info); 
		// 直接访问外部类的私有属性
	}
};

public void fun() { 
	// 定义外部类的方法
	new Inner().print(); 
	// 通过内部类的实例化对象调用方法
	}
};

  public class InnerClassDemo03 {
	public static void main(String args[]) {
		new Outer.Inner().print(); 
	}
};
2.不使用statc声明一个内部类 ,使外部调用
class Outer { // 定义外部类
	private String info = "hello world"; 
	// 定义外部类的私有属性

	class Inner { // 定义内部类
		public void print() { 
			// 定义内部类的方法
			System.out.println(info); 
			// 直接访问外部类的私有属性
		}
	};

	public void fun() { 
	// 定义外部类的方法
		new Inner().print(); 
		// 通过内部类的实例化对象调用方法
	}
};

	public class InnerClassDemo04 {
		public static void main(String args[]) {
			Outer out = new Outer(); 
				// 外部类实例化对象
				Outer.Inner in = out.new Inner(); 
				// 实例化内部类对象
				in.print(); // 调用内部类的方法
			}
	}
3.在方法中定义内部类 ,使外部调用
class Outer { // 定义外部类
	private String info = "hello world";

	// 定义外部类的私有属性
	public void fun(final int temp) {
		// 定义外部类的方法
		class Inner {
		// 在方法中定义的内部类
			public void print() {
			// 定义内部类的方法
				System.out.println("类中的属性:" + info)
			// 直接访问外部类的私有属性
			System.out.println("方法中的参数:" + temp)
			}
		}
		new Inner().print();
		// 通过内部类的实例化对象调用方法
	}
};

public class InnerClassDemo05 {
public static void main(String args[]) {
new Outer().fun(30); // 调用外部类的方法
}
};
  • 7
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值