- 1、本文档共17页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
投票管理系统
1 题目描述
投票选举过程:
(1)用户从键盘输入候选人的个数(提示用户输入人数为1-12)、当选标准(例:若为50%,只需输入50即可)。点击确定后,由用户从键盘输入每一个候选人的姓名,提交后即可生成候选人的信息(包括姓名和编号)。
(2)投票者就开始投票,对投票者没有姓名和编号的存储,只有结果的存储。
(3)以表格的形式展示选举结果,包括:候选者的编号、姓名、所得票数、得票率、是否中选,并附投票人的个数和当选标准。
2类设计
2.1 类图
Manager:控制整个系统,并对投票结果以及是否当选进行控制;
UserInterface:控制整个系统的展示;
MainGraph:接收候选者人数、姓名、当选标准信息;
VoteGraph:接受用户的投票信息;
ResultGraph:展示最终的投票结果;
Candidate:候选人的实体对象,包括候选人的各种属性;
2.2 类声明
本报告采用java编程语言,一共构造了六个类:1、Candidate; 2、Manager; 3、UserInterface;4、MainGraph;5、VoteGraph ;6、ResultGraph。
2.2.1、候选者类:Candidate
public class Candidate {
private String name;//候选者姓名
private int id; //候选者的编号
private int num; // 得票数量
private double voteResult; //得票率
private boolean isVote; //是否中选
Candidate(String name, int id) ;//Candidate 的构造方法
public String getName() ;
public void setName(String name) ;
public int getId() ;
public void setId(int id) ;
public int getNum() ;
public void setNum(int num) ;
public double getVoteResult() ;
public void setVoteResult(double voteResult) ;
public boolean isVote();
public void setVote(boolean isVote) ;
}
2.2.2、管理类:Manager类
public class Manager {
public int candidates; // 候选人的数量
public int percentage; // 当选标准(百分比)
public int voters = 0; // 投票人数量
ListCandidate listc ;// 装载候选者的容器
public static void main(String[] args) ;
public void calculateResult() ;// 计算结果
}
2.2.3、窗口的操作类UserInterface
public class UserInterface extends JFrame {
private static final long serialVersionUID = 1L;
public Container contentPanel; // 当前界面控制器
public Manager manager; //利于数据通信,主要包括:候选人数量、当选标准、投票者数量
public JPanel p1; //输入信息的面板
public JPanel p2; //投票面板
public JPanel p3; //显示投票结果的面板
public ListJTextField list_textfield ;//装载候选人姓名的容器
public ListJRadioButton list_jradiobutton ;//投票
public UserInterface(Manager m) ;
public void update() ;//窗口中增删组建后立即更新
public void addCandi(int num);//panel1输入侯选者姓名完成后,生成候选者对象
}
2.2.4、输入面板类:MainGraph
public class MainGraph{
private UserInterface userInterface; //与主面板的通信
public MainGraph(UserInterface
文档评论(0)