软件构造blog1--java学生成绩管理系统

(一)前言

由于这个工程是在刚刚学习完java后就匆忙写了一个,虽然之前在c语言也写过管理系统,但是因为当时的评分标准更多地使用了指针,链表等数据结构。而且是面向过程进行编程,没有面向对象。
这次主要是想写一个面向对象的java学生管理系统,本意是想做成html网页版,后端连数据库,结果时间太紧了,就做了在eclipse下实现的工程,不是很完善,以后有时间再改。AF和RI也是后面软件构造课才学的,也没写。

给有精力的同学一个思路:我们可以设置学生端和教师端两个客户端,分别设置账户密码,存到sql中,然后当登入的时候,我们可以判断ta是一个teacher还是一个student,对于teacher来说,我们可以查看成绩,可以对成绩增删改查,对于student,我们只能查看自己的成绩。如果有需要,在teacher上面再加一个权限更高的master,可以查看日志,知道哪些数据是谁改动过的。

(二)类设计

(1)Student类

面向对象的编程思想,编写Student类,每一个student有一些自己的属性,比如姓名,学号,联系电话,所以在Student类中,这些属性应该是private的,并且包括一系列set和get方法,例如setName,getName,setId,getId等方法。还设置了两个对学生list的操作,add和list,即添加学生和列出学生列表的所有信息。

package student;

import java.util.ArrayList;
import java.util.Scanner;

public class Student 
{
	private String name;
	private String id;
	static ArrayList<Student> studentList=new ArrayList();
	public static Scanner in = new Scanner(System.in);
	public Student(String name,String id)//学生信息:姓名,学号,性别
	{
		this.name=name;
		this.id=id;
	}
	public void setName(String name)
	{
		this.name=name;
	}
	public String getName()
	{
		return name;
	}
	public void setId(String id)
	{
		this.id=id;
	}
	public String getId()
	{
		return id;
	}
	public static void add()//输入学生信息
	{
		System.out.print("请输入学生姓名:");
		String name = in.next();
		System.out.print("请输入学生学号:");
		String id = in.next();
		Student student=new Student(name,id);
		studentList.add(student);
	}
	public static void list(ArrayList<Student> studentList)//输出所有学生的信息
	{
		System.out.println("学号\t姓名");
		for (Student student:studentList)
		{
			String name=student.getName();
			String id =student.getId();
			System.out.println(name+"\t"+id);
		}
	}
	
}

(2)Course类

本来想像C语言实现的那样,设定数语外理化生等六门科目,但实际上大学的科目并不是这些,那么我们就需要将这个需求交给用户自己去完成。
我们的courselist最开始是空的,也就是没有任何课程,我们需要用户自己添加课程,包括自己的课程名称,课程学分等相应信息。以保证我们的程序具有良好的可扩展性和可复用性。

package student;

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

HKU Ljy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值