137、Java内部类之把内部类放到外部
01.代码如下:
package TIANPAN; class Outer { // 外部类 private String msg = "Hello World !"; public void fun() { // this表示当前调用fun()方法的对象,在本程序中主方法由out对象调用,所以this就是out new Inner(this).print(); // 实例化内部类对象,并且调用print()方法 } /*内部类需要访问msg属性,但是此属性属于Outer类,而在Outer类里面此属性使用private进行封装 所以如果此时要得到这个属性的内容,需要定义一个getter方法*/ public String getMsg() { return this.msg; } } class Inner { // 定义一个内部类 private Outer out; // 必须依靠对象才可以调用getMsg()方法 public Inner(Outer out) { // 在构造方法中接收外部类对象 this.out = out; } public void print() { // 利用Outer类对象调用方法 System.out.println(this.out.getMsg()); } } /** * 此处为文档注释 * * @author 田攀 微信382477247 */ public class TestDemo { public static void main(String args[]) { Outer out = new Outer(); // 实例化外部类对象 out.fun(); // 调用外部类方法 } }
02.效果如下:
知识有价,如果您认为这篇文章有价值,认同作者的付出,可以微信二维码打赏任意金额给作者(微信号:382477247)哦,谢谢。