zoukankan      html  css  js  c++  java
  • Java中一对多映射关系

    通过栗子,一个人可以有多辆汽车

    定义人   这个类

    人可以有很多辆汽车,类中车属性用数组

    复制代码
    class Person{ 
        private String name;
        private String phone;
        private Car[] car; 
        public Person() {}
        public Person(String name, String phone) {
            this.name = name;
            this.phone = phone;
        }
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        public String getPhone() {
            return phone;
        }
        public void setPhone(String phone) {
            this.phone = phone;
        }
        public Car[] getCar() {
            return car;
        }
        public void setCar(Car[] car) {
            this.car = car;
        }
        public String getInfo(){
            return "姓名"+name+",电话"+phone;
        }
    }
    复制代码

    然后定义汽车  这个类

    复制代码
    class Car{ 
        private String name;
        private double price;
        private Person person;
        public Car() {}
        public Car(String name,double price) {
            this.name = name;
            this.price = price;
        }
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        public double getPrice() {
            return price;
        }
        public void setPrice(double price) {
            this.price = price;
        }
        public Person getPerson() {
            return person;
        }
        public void setPerson(Person person) {
            this.person = person;
        }
        public String getInfo() {
            return "品牌:"+name+" 价格:"+price;
        }
    复制代码

    之后,在测试类中,分别实例Person类和Car类

    人这个对象只new一个

    汽车可以无限个,这里象征性实例三个

            Person p = new Person("阿三","33333333");
            Car c1 = new Car("宝马",400000);
            Car c2 = new Car("宝来",100000);
            Car c3 = new Car("宝骏",800

    对象实例化之后,设置彼此的关系,即一个人对应三台车,每台车都对应一个人

    通过set方法传值

            p.setCar(new Car[]{c1,c2,c3}); 
            c1.setPerson(p);
            c2.setPerson(p);
            c3.setPerson(p);

    测试

    通过人,查询其下的车辆信息

    System.out.println(p.getInfo()+"拥有的车辆");
    for(int i=0;i<p.getCar().length;i++) {
        System.out.println(p.getCar()[i].getInfo()); //数组类型用for循环打印
    }

    运行

    通过车,查找所属人信息

    System.out.println(c1.getInfo()+" 这辆车的所属人:"+c1.getPerson().getInfo());
    System.out.println(c2.getInfo()+" 这辆车的所属人:"+c1.getPerson().getInfo());
    System.out.println(c3.getInfo()+" 这辆车的所属人:"+c1.getPerson().getInfo());

    运行

  • 相关阅读:
    元学习Meta Learning/Learning to learn
    TRAINING A CLASSIFIER训练分类器(pytorch官网60分钟闪电战第四节)
    NEURAL NETWORKS神经网络(pytorch官网60分钟闪电战第三节)
    AUTOGRAD: 自动分化(pytorch官网60分钟闪电战第二节)
    WHAT IS PYTORCH?(pytorch官网60分钟闪电战第一节)
    windows找不到gpedit.msc
    The “freeze_support()“ line can be omitted if the program is not going to be frozen to produ
    torch.mul() 和 torch.mm() 的区别
    vue面试题(2)
    JS输出题练习
  • 原文地址:https://www.cnblogs.com/w-xibao/p/8183680.html
Copyright © 2011-2022 走看看