前言
模拟实现一个基于文本界面的《项目开发团队分配管理软件》,熟悉Java面向对象的高级特性,进一步掌握编程技巧和调试技巧。
一、系统功能结构
此项目按照功能结构图分为四大模块,分别进行构造与编写,最后再组装在一起。
二、需求说明
三、软件设计结构
1.用户登录与注册模块
实现用户登录和注册。
2.开发人员管理模块
主要实现对开发人员的增删改查等操作。
Employee作为父类,Proprammer继承Employer,然后后面的依次继承前面的。因为每个程序员及其子类,均会领用某种电子设备,所有 就要设置接口Equipment,让每个程序员及其子类去实现这个接口。因为设备有很多种,所以也会定义其他的类来实现接口Equipment。
接口和设备类按照此功能图完成即可。
这些类按照需求完成即可,还需要用get/set方法来设置或者获取各种变量的值。
特别注意:建议要在这些类里面全部重写toString方法,返回该对象的字符串表示。通常, toString 方法会返回一个“以文本方式表示”此对象的字符串。结果应是一个简明但易于读懂的信息表达式。如果不使用直接打印对象名的结果是一个地址值。
例如:
1.toString()方法
Object类具有一个toString()方法,你创建的每个类都会继承该方法。它返回对象的一个String表示,并且对于调试非常有帮助。然而对于默认的toString()方法往往不能满足需求,需要覆盖这个方法。
toString()方法将对象转换为字符串。看以下代码:
package sample;
class Villain {
private String name;
protected void set(String nm) {
name = nm;
}
public Villain(String name) {
this.name = name;
}
public String toString() {
return "I'm a Villain and my name is " + name;
}
}
public class Orc extends Villain {
private int orcNumber;
public Orc(String name, int orcNumber) {
super(name);
this.orcNumber = orcNumber;
}
public void change(String name, int orcNumber) {
set(name);
this.orcNumber = orcNumber;
}
public String toString() {
return "Orc" + orcNumber + ":" + super.toString();
}
public static void main(String[] args) {
Orc orc = new Orc("Limburger", 12);
System.out.println(orc);
orc.change("Bob", 19);
System