1 class A{ 2 A()/*2.构造*/{ 3 new B(this/*4.将一个 " A 类型的对象" 作为其参数*/)/*3.构建一个B类对象*/.print();//6.引用 B 类对象 的print()方法 4 } //此处this: 弄出一个A类型的对象,这里不用管怎么弄的 5 void print() { 6 System.out.println("Hello from A!"); //8.输出 Hello from A! 7 8 } 9 public static void main(String args[]){ 10 new A(); //1. 程序开始,构造 A类对象 11 } 12 } 13 14 class B{ 15 A a; //声明一个 A 类型的对象 (this)a 16 17 B(A a/*a 为 A 类型的参数*/) /*3.B的构造函数*/ 18 { 19 this.a=a; //5.将this给到的对象作为参数(也就是a) 20 } //成员变量(this)a //创建(与声明不同)对象 (this)a 21 22 void print() { 23 a.print(); //7.调用 class A 中的 print()方法 24 25 System.out.println("Hello from B!"); //9.输出 Hello from B! 26 } 27 28 } //如果一个类没有显式的定义它自己的构造函数那么 Java 29 //将自动地提供一个默认的构造函数。
//结果:Hello from A!
Hello from B!
以上为个人理解,希望大佬指出错误