public class Lll { public static void main(String[] args) { Bj bj =new Bj(); bj.setName("三年一班"); Bz bzh =new Bz(); bzh.setName("周杰伦"); //设置班长 bj.setBz(bzh); //获取三年一班的班长 Bz ban = bj.getBz(); System.out.println("三年一班的班长是:"+ban.getName()); //查找周杰伦所在的班级 bzh.setBj(bj); System.out.println("周杰伦所在的班级是:"+bzh.getBj().getName()); } } class Bj{ private String name; private Bz bz; public Bj(){} public String getName() { return name; } public void setName(String name) { this.name = name; } //bz属性的赋值和提取 public Bz getBz() { return bz; } public void setBz(Bz bz) { this.bz = bz; } public String getInfo(){ return name+"班级名字"; } } class Bz{ private String name; private Bj bj; public Bz(){} public String getName() { return name; } public void setName(String name) { this.name = name; } //班级属性的赋值和提取方法 public Bj getBj() { return bj; } public void setBj(Bj bj) { this.bj = bj; } public String getInfo(){ return name+"班长姓名"; } }
一对多
package lxd; public class Lxd{ public static void main(String[] args) { //1初始化数据 Dept d1 = new Dept("财务部","济南"); Emp e1 = new Emp("张三","总监"); Emp e2 = new Emp("李四","经理"); Emp e3 = new Emp("王五","员工"); //2设置关系 e1.setDept(d1); e2.setDept(d1); e3.setDept(d1); d1.setEmp(new Emp[]{e1,e2,e3}); //3获取数据 System.out.println(e3.getDept().getInfo()); for (int i = 0; i < d1.getEmp().length; i++) { System.out.println(d1.getEmp()[i].getInfo()); } } } class Emp{ //员工类 private String ename; private String job; private Dept dept; //部门属性 public Emp(){}; public Emp(String ename,String job){ this.ename = ename; this.job = job; } public Dept getDept(){ return dept; } public void setDept(Dept dept){ this.dept = dept; } public String getInfo(){ return "雇员姓名:"+ename+",职位"+job; } } class Dept{ //部门类 private String dname; private String loc ; private Emp[] emps; //多个员工属性 public Dept(){}; public Dept(String dname,String loc){ this.dname = dname; this.loc = loc; } public void setEmp(Emp[] emps){ this.emps = emps; } public Emp[] getEmp(){ return emps; } public String getInfo(){ return "部门名称"+dname+"地址:"+loc; } }
多对多
package lxd; public class Lxd{ public static void main(String[] args) { //初始值 Stu s1 = new Stu("张三"); Stu s2 = new Stu("李四"); Stu s3 = new Stu("王五"); Course c1 = new Course("Java"); Course c2 = new Course("Oracle"); Course c3 = new Course("Python"); //设置关系 s1.setCourses(new Course[]{c1,c3}); s2.setCourses(new Course[]{c2}); s3.setCourses(new Course[]{c1,c2,c3}); c1.setStus(new Stu[]{s1,s3}); c2.setStus(new Stu[]{s2,s3}); c3.setStus(new Stu[]{s1,s3}); //取数据 //张三选的课 System.out.println(s1.getName()+"-"+"所选课程"); for (int i = 0; i < s1.getCourses().length; i++) { System.out.println(s1.getCourses()[i].getName()); } } } class Stu{ private String name; private Course[] courses; //课程属性数组 public Stu(){} public Stu(String name){ this.name = name; } public String getName(){ return name ; } public void setName(String name){ this.name = name; } public Course[] getCourses(){ return courses; } public void setCourses(Course[] courses){ this.courses = courses; } } class Course{ private String name; private Stu[] stus; //构造 public Course(){} public Course(String name ){ this.name = name; } //方法 public String getName(){ return name; } public void setName(String name){ this.name = name; } public Stu[] getStus(){ return stus; } public void setStus(Stu[] stus){ this.stus = stus; } // public String getInfo(){ return "课程"+name; } }