Java-a-muchos ejemplos relación

ejemplos relación de la vida muchos comunes, como una escuela pueden incluir más de un estudiante, un estudiante perteneciente a una escuela, entonces esta es una relación típica-muchos, la relación se puede expresar a través de la colección.

1. La definición de clase del estudiante

import java.util.HashSet;
import java.util.Iterator;

public class Student {
    private String name; // 定义student类
    private int age; // 定义name属性
    private School school; // 一个学生属于一个学校

    // 通过构造方法设置内容
    public Student(String name, int age) {
        this.setName(name);
        this.setAge(age);
    }

    public String getName() {
        return name;
    }

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

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public School getSchool() {
        return school;
    }

    public void setSchool(School school) {
        this.school = school;
    }

    // 重写toString()方法
    public String toString() {
        return "学生姓名:" + this.name + ":年龄" + this.age;
    }
}

La propiedad escolar incluye una clase más Estudiante representa un estudiante perteneciente a una escuela. El programa se está ejecutando, sólo tendrá que pasar una referencia clases de la Escuela se pueden completar dicha relación.

2. Definiciones clase de la escuela

import java.util.ArrayList;
import java.util.List;

public class School {
    private String name;
    private List<Student> allStudents; // 一个学校有多个学生

    public School() {
        this.allStudents = new ArrayList<Student>();// 实例化List集合
    }

    public School(String name) {
        this();
        this.setName(name);
    }

    public String getName() {
        return name;
    }

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

    public List<Student> getAllStudents() {
        return allStudents;
    }

    public void setAllStudents(List<Student> allStudents) {
        this.allStudents = allStudents;
    }

    // 重写toString()方法
    public String toString() {
        return "学校名称:" + this.name;
    }
}

Cuando las definiciones de clase de la escuela define una lista de atributos de tipo, y especifican el tipo de estudiante es de tipo genérico, tal acción representaría un objeto School contiene referencias a una pluralidad de tipos de Student.

3. Prueba del código, las relaciones establecidas

import java.util.Iterator;

public class Test {
    public static void main(String[] args) {
        // 实例化学校对象
        School sch = new School("背景大学");
        // 实例化学生对象
        Student s1 = new Student("张三", 21);
        Student s2 = new Student("李四", 22);
        Student s3 = new Student("王五", 23);
        // 在学校中加入学生
        sch.getAllStudents().add(s1);
        sch.getAllStudents().add(s2);
        sch.getAllStudents().add(s3);
        // 一个学生属于一个学校
        s1.setSchool(sch);
        s2.setSchool(sch);
        s3.setSchool(sch);
        // 输出学校信息
        System.out.println(sch);

        // 实例化Iterator对象,用于输出全部的学生信息
        Iterator<Student> ite = sch.getAllStudents().iterator();
        while (ite.hasNext()) {
            System.out.println("\t" + ite.next());
        }
    }
}

Los resultados del programa son los siguientes:

学校名称:北京大学
    学生姓名:张三:年龄21
    学生姓名:李四:年龄22
    学生姓名:王五:年龄23

Este código a cada objeto instanciado relaciones de referencia School y clase Student, a continuación, almacenados entre sí por las propiedades de dos clases, formando de ese modo una pluralidad de un estudiante de escuela, un estudiante que pertenece a una relación de clases muchos.

Publicados 457 artículos originales · ganado elogios 94 · Vistas a 10000 +

Supongo que te gusta

Origin blog.csdn.net/weixin_45743799/article/details/104718133
Recomendado
Clasificación