源码分析

Course.java

 package com.ftl.many2many;

 import java.util.*;

 public class Course
{
private int credit;
private String name;
private List<Student> allStudent;
public int getCredit()
{
return credit;
}
public void setCredit(int credit)
{
this.credit = credit;
}
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
public List<Student> getAllStudent()
{
return allStudent;
}
public void setAllStudent(List<Student> allStudent)
{
this.allStudent = allStudent;
}
public Course()
{
this.allStudent = new ArrayList<Student>();
}
public Course(String name, int credit)
{
this();
this.setCredit(credit);
this.setName(name);
} public String toString()
{
return "课程名称:" + this.name + "\t课程学分:" + this.credit;
}
}

School.java

 package com.ftl.many2many;

 import java.io.*;
import java.util.*;
public class School
{
private String name;
private List<Student> allStudent;
public School()
{
this.allStudent = new ArrayList<Student>();
}
public School(String name)
{
this();
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public List<Student> getAllStudent() {
return allStudent;
}
public void setAllStudent(List<Student> allStudent) {
this.allStudent = allStudent;
}
public String toString()
{
return "学校姓名" + this.name;
} }

Student.java

 package com.ftl.many2many;

 import java.util.*;
public class Student
{
private int age;
private String name;
private School school;
private List<Course> allCourse; public Student()
{
this.allCourse = new ArrayList<Course>();
}
public Student(String name, int age)
{
this();
this.setName(name);
this.setAge(age);
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public School getSchool() {
return school;
}
public void setSchool(School school) {
this.school = school;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public List<Course> getAllCourse() {
return allCourse;
}
public void setAllCourse(List<Course> allCourse) {
this.allCourse = allCourse;
}
public String toString()
{
return "学生姓名:" + this.name + "\t 年龄:" + this.age;
}
}

testDemo.java

 package com.ftl.many2many;

 import java.util.Iterator;

 public class testDemo
{
public static void main(String[] args)
{
School sch = new School("海风大学");
Student s1 = new Student("张三", 12);
Student s2 = new Student("赵四", 22);
Student s3 = new Student("张5", 11);
Course c1 = new Course("计算机", 3);
Course c2 = new Course("语文", 1);
Course c3 = new Course("数学", 2);
//3个学生一个学校
s1.setSchool(sch);
s2.setSchool(sch);
s3.setSchool(sch);
//一个学校3个学生
sch.getAllStudent().add(s1);
sch.getAllStudent().add(s2);
sch.getAllStudent().add(s3);
//第一门课3个xues
c1.getAllStudent().add(s3);
c1.getAllStudent().add(s2);
c1.getAllStudent().add(s1);
s2.getAllCourse().add(c2);
s1.getAllCourse().add(c1);
s3.getAllCourse().add(c3); //第二门一个学生
c2.getAllStudent().add(s3);
s3.getAllCourse().add(c2);
c3.getAllStudent().add(s3);
s3.getAllCourse().add(c3);
//输出一门课信息,观察一门课多少学生:
System.out.println(c1);
Iterator<Student> iter = null;
iter = c1.getAllStudent().iterator();
System.out.println("C1 选课情况 : ");
while(iter.hasNext())
{
Student c = iter.next();
System.out.println("\t|-" + c);
}
System.out.println("----------------------------");
System.out.println("学校学生情况: ");
iter = sch.getAllStudent().iterator();
while(iter.hasNext())
{
Student stu = (Student) iter.next();
System.out.println("\t|-" + stu);
}
System.out.println("----------------------------");
//张5的选课情况:
System.out.println("学生张武选课情况: ");
System.out.println(s3);
Iterator<Course> it = s3.getAllCourse().iterator();
while(it.hasNext())
{
Course c = it.next();
System.out.println("\t|-" + c);
} }
}

源码下载

点击下载

Java实例---简单的上课管理系统的更多相关文章

  1. Java实例---简单的宠物管理系统

    代码分析 Cat.java package com.ftl.petshop; class Cat implements Pet { private String name; private Strin ...

  2. Java实例---简单的超市管理系统

    代码分析 Customer.java package test; public class Customer { private String name; private int customerTy ...

  3. Java实例---简单的个人管理系统

    代码分析 FileOperate.java package com.ftl.testperson; import java.io.File ; import java.io.FileInputStre ...

  4. Java实例---简单的数据库操作

    源码分析 DAOFactory.java package cn.ftl.mysql ; public class DAOFactory { public static IEmpDAO getIEmpD ...

  5. Java实例---简单的投票系统

    代码分析  InputData.java package vote; import java.io.BufferedReader; import java.io.IOException; import ...

  6. Java之从头开始编写简单课程信息管理系统

    编写简单的课程管理系统对于新手并不友好,想要出色的完成并不容易以下是我的一些经验和方法 详情可参考以下链接: https://www.cnblogs.com/dream0-0/p/10090828.h ...

  7. 主题:Java WebService 简单实例

    链接地址:主题:Java WebService 简单实例    http://www.iteye.com/topic/1135747 前言:朋友们开始以下教程前,请先看第五大点的注意事项,以避免不必要 ...

  8. PureMVC和Unity3D的UGUI制作一个简单的员工管理系统实例

    前言: 1.关于PureMVC: MVC框架在很多项目当中拥有广泛的应用,很多时候做项目前人开坑开了一半就消失了,后人为了填补各种的坑就遭殃的不得了.嘛,程序猿大家都不喜欢像文案策划一样组织文字写东西 ...

  9. java简单学生成绩管理系统

    题目要求: 一. 数据结构要求:(5 分) 1.定义 ScoreInformation 类,其中包括七个私有变量(stunumber, name, mathematicsscore, englishi ...

随机推荐

  1. tomcat 控制台乱码问题

    环境:win7 + tomcat 8.5 问题描述:web端一切正常,不管是返回页面的数据还是控制台打印的日志,都没乱码,给app提供的api接口返回乱码,然后就去百度,像什么 在tomcat的ser ...

  2. PTA (Advanced Level) 1015 Reversible Primes

    Reversible Primes A reversible prime in any number system is a prime whose "reverse" in th ...

  3. 【LeetCode题解】530_二分搜索树的最小绝对值差

    目录 [LeetCode题解]530_二分搜索树的最小绝对值差 描述 方法一.中序遍历二分搜索树 思路 Java 代码 Python 代码 [LeetCode题解]530_二分搜索树的最小绝对值差 描 ...

  4. 【Echo】实验 -- 实现 C/C++下UDP, 服务器/客户端 通讯

    本次实验利用UDP协议, 语言环境为 C/C++ 利用套接字Socket编程,实现Server/CLient 之间简单的通讯. 结果应为类似所示: 下面贴上代码(参考参考...) Server 部分: ...

  5. Charles 抓取 iphone https的设置方式

    1. Charles:  help > SSL Proxying > Install Charles Root Certificate, 2. 将会打开 钥匙串访问 的功能,查找 Char ...

  6. C语言20150620

    1-->printf()输出的时候前面没有0 是十进制,前面带0是八进制,前面有0x是十六进制 printf("%d",100):十进制解析 printf("%d& ...

  7. 使用Redis进行简单的数据缓存

    引入spring-data-redis包.jedis.connection-pool包 applicationContext.xml的配置 <!-- redis Connection --> ...

  8. [javaSE] 网络编程(URL)

    获取URL对象,new出来,构造参数:String的路径 调用URL对象的getProtocal()方法,获取协议 调用URL对象的getHost()方法,获取主机 调用URL对象的getPath() ...

  9. Java:反射与代理

    Java世界的繁荣反射这一特性有很大功劳,可以获取全面的类型信息. /** * */ package ref; import java.lang.reflect.Field; import java. ...

  10. Bash拾遗:变量

    使用引号包裹变量 在<高级Bash脚本编程指南>中的4.1节中有这么个例子: hello="A B C D" echo $hello # A B C D echo &q ...