Java日常学习022(对象的一对一关系的实现)

学习目标:

对象的一对一关系:
单向一对一:
如:一个英雄对应一把武器

 双向一对一:一个学生对应一个座位,一个座位对应一个学生

学习内容:

package com.qf.lzp;

/**

  • 对象的一对一关系:

  • 单向一对一

  • 双向一对一
    */
    public class Object004 {
    public static void main(String[] args) {
    Studentn student1 = new Studentn(“张三”, “2012”);
    Seat seat1 = new Seat(1, 1);
    //把两个对象关联
    //在Studentn类中定义了一对一关系,则需要进行如下关联
    student1.setSeat(seat1);
    //在Seat类中定义了一对一关系,则需要进行如下关联
    seat1.setStudentn(student1);
    //从而将对象student1与seat1双向一对一

     //!!!通过一对一关系进行输出,以及双向一对一的输出!!!
     System.out.println("学号为" + student1.getId() + "的学生" + student1.getName() + ",他的座位号是" + student1.getSeat().row + "排" + student1.getSeat().column + "列");
    
     System.out.println(seat1.row + "排" + seat1.column + "列座位的学生是" + seat1.getStudentn().getName() + ",他的学号为" + seat1.getStudentn().getId());
    

    }
    }

class Studentn { //学生类
private String Name;
private String Id;
private Seat seat;//一对一关系 将学生类与座位单向一对一的

public Seat getSeat() {
    return seat;
}

public void setSeat(Seat seat) {
    this.seat = seat;
}

public Studentn() {
}

public Studentn(String Name, String Id) {
    this.Name = Name;
    this.Id = Id;
}

public String getName() {
    return Name;
}

public void setName(String Name) {
    this.Name = Name;
}

public String getId() {
    return Id;
}

public void setId(String Id) {
    this.Id = Id;
}

}

class Seat { //座位类
int row;//排
int column;//列
/**
* 若在另一个里面也定义一个对应的单向一对一,则形成双向的一对一,可以互相对应
*/
private Studentn studentn;

public Studentn getStudentn() {
    return studentn;
}

public void setStudentn(Studentn studentn) {
    this.studentn = studentn;
}


public Seat() {
}

public Seat(int row, int column) {
    this.row = row;
    this.column = column;
}

public int getRow() {
    return row;
}

public void setRow(int row) {
    this.row = row;
}

public int getColumn() {
    return column;
}

public void setColumn(int column) {
    this.column = column;
}

}
运行结果如下:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值