Java 的对象传递
举一个简单的例子说明一下
需求:通过关联两个类,使可以通过Person 对象获取所关联的 Car 类的对象中的数据
一个 Person 类,一个 Car 类,
==> Person 类
<code>class</code> <code>Person{</code>
<code> </code><code>// 设置变量</code>
<code> </code><code>private</code> <code>int</code> <code>pid;</code>
<code> </code><code>private</code> <code>String pname;</code>
<code> </code><code>private</code> <code>int</code> <code>page;</code>
<code> </code><code>private</code> <code>Car carname;</code>
<code> </code>
<code> </code><code>// 多参构造方法</code>
<code> </code><code>public</code> <code>Person(String pname, </code><code>int</code> <code>page){</code>
<code> </code><code>this</code><code>.setPname(pname);</code>
<code> </code><code>this</code><code>.setPage(page);</code>
<code> </code><code>}</code>
<code> </code><code>public</code> <code>String getInfo(){</code>
<code> </code><code>return</code> <code>"姓名: "</code> <code>+ getPname() + </code><code>"\r"</code> <code>+ </code><code>"年龄:"</code> <code>+ getPage() + </code><code>"\r"</code><code>;</code>
<code> </code><code>public</code> <code>void</code> <code>setCarName(Car carname){</code>
<code> </code><code>this</code><code>.carname = carname;</code>
<code> </code><code>public</code> <code>Car getCarName(){</code>
<code> </code><code>return</code> <code>this</code><code>.carname;</code>
<code> </code><code>public</code> <code>void</code> <code>setPname(String pname){</code>
<code> </code><code>this</code><code>.pname = pname;</code>
<code> </code><code>public</code> <code>String getPname(){</code>
<code> </code><code>return</code> <code>this</code><code>.pname;</code>
<code> </code><code>public</code> <code>void</code> <code>setPage(</code><code>int</code> <code>page){</code>
<code> </code><code>this</code><code>.page = page;</code>
<code> </code><code>public</code> <code>int</code> <code>getPage(){</code>
<code> </code><code>return</code> <code>this</code><code>.page;</code>
<code>}</code>
==> Car 类
<code>class</code> <code>Car{</code>
<code> </code><code>private</code> <code>String cname;</code>
<code> </code><code>private</code> <code>Person pname;</code>
<code> </code><code>// 构造函数</code>
<code> </code><code>public</code> <code>Car(String cname){</code>
<code> </code><code>this</code><code>.setCname(cname);</code>
<code> </code><code>}</code>
<code> </code>
<code> </code><code>public</code> <code>void</code> <code>setPname(Person pname){</code>
<code> </code><code>this</code><code>.pname = pname;</code>
<code> </code><code>public</code> <code>Person getPname(){</code>
<code> </code><code>return</code> <code>this</code><code>.pname;</code>
<code> </code><code>public</code> <code>void</code> <code>setCname(String cname){</code>
<code> </code><code>this</code><code>.cname = cname;</code>
<code> </code><code>public</code> <code>String getCname(){</code>
<code> </code><code>return</code> <code>this</code><code>.cname;</code>
<code> </code><code>public</code> <code>String getCarInfo(){</code>
<code> </code><code>return</code> <code>"车名:"</code> <code>+ getCname();</code>
==> 测试类
<code>public</code> <code>class</code> <code>testDemo {</code>
<code> </code><code>public</code> <code>static</code> <code>void</code> <code>main(String[] args) {</code>
<code> </code><code>Person p = </code><code>new</code> <code>Person(</code><code>"Tom"</code><code>, </code><code>20</code><code>);</code>
<code> </code><code>Car car = </code><code>new</code> <code>Car(</code><code>"宝马"</code><code>);</code>
<code> </code><code>p.setCarName(car);</code>
<code> </code><code>car.setPname(p);</code>
<code> </code><code>System.out.println(p.getInfo());</code>
<code> </code><code>// 通过 Person 对象获取 其 Car 对象中的内容</code>
<code> </code><code>System.out.println(p.getCarName().getCarInfo());</code>
<code> </code><code>// 通过 Car 对象获取 Person 对象中的内容 </code>
<code> </code><code>System.out.println(car.getPname().getPname());</code>
<code> </code>
本文转自 tianshuai369 51CTO博客,原文链接:http://blog.51cto.com/songqinglong/2071878