Java实例---简单的上课管理系统
源码分析
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实例---简单的上课管理系统的更多相关文章
- Java实例---简单的宠物管理系统
代码分析 Cat.java package com.ftl.petshop; class Cat implements Pet { private String name; private Strin ...
- Java实例---简单的超市管理系统
代码分析 Customer.java package test; public class Customer { private String name; private int customerTy ...
- Java实例---简单的个人管理系统
代码分析 FileOperate.java package com.ftl.testperson; import java.io.File ; import java.io.FileInputStre ...
- Java实例---简单的数据库操作
源码分析 DAOFactory.java package cn.ftl.mysql ; public class DAOFactory { public static IEmpDAO getIEmpD ...
- Java实例---简单的投票系统
代码分析 InputData.java package vote; import java.io.BufferedReader; import java.io.IOException; import ...
- Java之从头开始编写简单课程信息管理系统
编写简单的课程管理系统对于新手并不友好,想要出色的完成并不容易以下是我的一些经验和方法 详情可参考以下链接: https://www.cnblogs.com/dream0-0/p/10090828.h ...
- 主题:Java WebService 简单实例
链接地址:主题:Java WebService 简单实例 http://www.iteye.com/topic/1135747 前言:朋友们开始以下教程前,请先看第五大点的注意事项,以避免不必要 ...
- PureMVC和Unity3D的UGUI制作一个简单的员工管理系统实例
前言: 1.关于PureMVC: MVC框架在很多项目当中拥有广泛的应用,很多时候做项目前人开坑开了一半就消失了,后人为了填补各种的坑就遭殃的不得了.嘛,程序猿大家都不喜欢像文案策划一样组织文字写东西 ...
- java简单学生成绩管理系统
题目要求: 一. 数据结构要求:(5 分) 1.定义 ScoreInformation 类,其中包括七个私有变量(stunumber, name, mathematicsscore, englishi ...
随机推荐
- 使用 JFlex
参数设置和声明段 %% 词法规则段 用户代码段这个段中的所有内容将被拷贝到生成的词法类的类声明之前.在这个段中,常见的是 package 和 import 语句.我们的词法说明在这个段中引入(impo ...
- Java 中 String 的构造方法
String 对于所有 Java 程序员来说都不会陌生,几乎每天甚至每个程序都会和 String 打交道,因此将 String 的常用知识汇集在此,方便查阅. 概叙: Java 中是如此定义 Stri ...
- js Array vs [],以及是否为空的判断
两者基本相同,唯一不同点在于初始化: var a = [], // these are the same b = new Array(), // a and b are arrays with len ...
- [转载]二叉树(BST,AVT,RBT)
二叉查找树(Binary Search Tree)是满足如下性质的二叉树:①若它的左子树非空,则左子树上所有结点的值均小于根结点的值:②若它的右子树非空,则右子树上所有结点的值均大于根结点的值:③左. ...
- c++ 沉思录---代理类
一.问题 如何设计一容器能包含彼此不同而又相互关联的类的对象(处于完整的继承层次的类)?因为一般的数组容器都只能包含一种类型的对象. 假设有一个表示不同类型的交通工具的类的派生层次: class Ve ...
- tomcat 控制台乱码问题
环境:win7 + tomcat 8.5 问题描述:web端一切正常,不管是返回页面的数据还是控制台打印的日志,都没乱码,给app提供的api接口返回乱码,然后就去百度,像什么 在tomcat的ser ...
- Linux笔记-Makefile伪指令解析
本文是我在博客里面找到的,觉得对makefile的伪指令介绍得非常详细了!也提到了伪指令为何要用.PHONY:来声明!希望我的这篇转过来的文章能够帮助大家理解makefile的伪指令! 我的理解: 拿 ...
- 【转】winform程序textbox滚动条保持在最下面 内容不闪烁
在开发winform程序时,会用到textbox控件来显示信息,当把textbox的Multiline属性改为Ture时(即多行显示状态),ScrollBars属性改为Vertical(内容过多时,显 ...
- [转]TEC1401.Report开发技术总结 - 第三章 使用Oracle Reports开发报表-创建一个分组报表(2/4)
本文转自:http://blog.csdn.net/deepsea_allen/article/details/53900284 第三章 创建一个分组报表 1. 建立数据模型 数据模型用于 ...
- amazeui笔记-web组件
Json.parse()