引用传递中如何进一步设计,于博会有后代,后代还会有车的操作?
个操作直接在 Member 类里面建立个新的属性,这个属性描述的是孩子,而孩子的类型就是 Member .(千万别看方法名称,要看方法返回值)
class Member {
private String name ;
private int age ;
private Member child;
//如果car == null, 表示这个人没有车
Private car ; //一个人只能有一辆车
public Member (String name,int age) {
this . name = name ;
this.age = age ;
}
Public viod setChild( Member child) {
This child= child ;
}
public Member getChild() {
return this.child;
}
Public void setCar (Car car) {
this. car = car ;
}
Public Car getCar () {
return this . car ;
}
public String getMemberInfo() {
return "【Membe】rname = "+ this. name +“,age =”this.age ;
}
}
class Car {
private String name ;
private double price ;
private Member member
public Car (String name , double price) {
this . name= name;
this.price = price ;
}
public void setMember (Member member ) {
this . member = member ;
}
public Member getMember () {
return this . member ;
}
public String getCarInfo () {
return "【Car】name= ”+ this.name+",price="=this.price ;
}
}
public class TestDemo {
public static void main (String args []) {
//第一步:根据关系设置相应的数据
//1、分别创建各自对象的实例
Member mem = new Member("于博" ,3Q) ;
Car car =new Car ("法拉利" , 5000000.0) ; //你的车
Menber chd = new Menber(“于三”, 8);//你的儿子
Car cc = new car(“玛莎拉蒂”,3.0);//你儿子的车
// 2、设置对象间的引用关系
mem. setCar(car) ; // 一个人有一辆车
mem.setChild(chd);//表示一个人有一个孩子
chd.setCar(cc);//孩子的车
car . setMember (mem) ; // 一辆车属于一个人
// 第二步: 根据关系取出数据
//3、通过人可以找到车
System. out. println (mem . getMemberInfo()) ;
System out. println (mem.getCar () .getCarInfo() ) ;
//4、通过车找到人
System.out.println (car .getMember () .getMemberInfo ());
//5、通过人找到他的孩子
System. out . println (mem . getChild() . getMemberInfo() ) ;
//6. 通过找到他孩子的车,代码链
System. out. println (mem . getChild() . getCar () . getCarInfo());
这些关系的配置可以很好的反应现实生活,是我们引用传递操作最基础的。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。