开发者社区> 问答> 正文

引用传递中如何进一步设计,于博会有后代,后代还会有车的操作?

已解决

引用传递中如何进一步设计,于博会有后代,后代还会有车的操作?

展开
收起
dzuv4lze7fhcm 2022-04-02 13:15:07 1290 0
1 条回答
写回答
取消 提交回答
  • 推荐回答

    个操作直接在 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());

    这些关系的配置可以很好的反应现实生活,是我们引用传递操作最基础的。

    2022-04-02 13:22:38
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
数据+算法定义新世界 立即下载
封闭的冲突与开放的和平 立即下载
菜鸟在末端业务领域技术探索实践 立即下载