我有一个作业需要解决,但是我有些卡住了,所以我来这里不是要求代码,而是想知道你是否同意我的思路,如果不同意,帮助我指导一下。请理解,不幸的是,我并不完全了解Java,我正在这门语言上迈出蹒跚的步伐。
因此,问题是:
"打算创建一个支持会议组织的程序。 会议具有名称、地点和日期。此外,每个会议都有一个组织委员会和一个程序委员会。两个委员会的成员均由姓名、电子邮件地址和机构标识。组织委员会成员还因其在会议中的角色(财务、空间或餐食)而特征化。程序委员会成员则通过反映他们在先前版本的会议中的表现(差、一般、好、优秀)的参数进行特征化。此外,程序委员会成员还与需要审核的文章列表相关联。
每篇文章均以标题、作者列表和评估结果(1到5之间的注释,其中5为最佳)进行特征化。作者通过姓名、电子邮件地址、机构和注册费用进行特征化。该费用可以是两种类型之一:高级(教师或研究人员)和学生。学生应考虑学位(学士、硕士或博士)。
高级作者的会议注册费为400美元,学生的费用为200美元。订阅使您可以提交一篇文章。想要提交多篇文章的高级作者必须为每篇额外的文章支付50美元。认为每篇文章的第一作者将负责在会议上演示该文章。"
根据这个问题,我需要实现一些函数,但这不是我来这里的原因。
阅读此问题,我可以看到:
name
email
institution
这是用来识别委员和作者的标识。
所以,我在考虑创建一个
public class Identification{
---------------
name
email
institutionName
---------------
}
然后一切都变得复杂了,因为我知道我必须创建一些扩展那个类的东西。
我可以创建:
public class Conference{
---------------
name
location
date[]
---------------
}
然后
public class Organization extends Conference{
---------------
role[] // 0 for finance, 1 for spaces and 2 for meals
---------------
}
并且。
public class Program extends Conference{
---------------
performance[] //0 poor, 1 fair, 2 good and 3 excellence
articlesList[] // probably an id of and article
---------------
}
但是组织和程序两个类都有成员,并且这些成员由与Identification类相同的东西进行标识。据我所知,Java只能扩展一个类,因此我现在陷入了如何处理它们之间关系的困境。
阅读问题的其余部分后,我确定
public class Article{
---------------
title
listOfAuthors[] //probably an id
evaluation //this is done by two members on program committee but I can't figure out how they relationship between themselves.
---------------
}
public class Authors{
---------------
type[][] // 0 for seniors and 1 for students on first column and 0 teachers, 1 researchers, 2 bachelor, 3 master and 4 doctorate on second column.
numberOfArticles //how many articles author wants to submit
conferenceFee[] // if on type[i][0] is 0 then Fee is 400 + (numberOfArticles * 50) else is 200
---------------
}
这是否是正确的方法,我不明白是否需要创建所有这些类,以及哪个类继承另一个类。有什么意见吗?
favolas
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!更新!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
感谢您所有的反馈。让我们看看我是否至少理解了您的一些建议。
public class Member{
---------------
memberID
name
email
institutionName
---------------
}
public class Authors extends Member{
---------------
authorsID
conferenceFee
---------------
}
public class Seniors extend Authors{
---------------
degree[] // 0 for teachers 1 for researchers
numberOfArticles = // Some int
fee = 400
public int payment(int numberOfArticles ){
return numberOfArticles * fee;
}
---------------
}
public class Students extend Authors{
---------------
degree[] // 0 bachelor, 1 master and 2 doctorate
numberOfArticles = // Some int
fee = 200
public int payment(){
return fee;
}
---------------
}
public class Article extend Authors{
---------------
articleID
title
listOfAuthors[] //probably an id
---------------
}
public class ProgramCommitteeMember extends Member{
---------------
role[] // 0 for finance, 1 for spaces and 2 for meals
---------------
}
public class OrganizationCommitteeMember extends Member{
---------------
lasYearPerformance[] //0 poor, 1 fair, 2 good and 3 excellence
articlesList[] // probably an id of and article
---------------
}
public class Committee{
---------------
committeeType[] // 0 for Organization Committee and 1 for Program Committee
---------------
}
public class OrganizationCommittee extends Committee{
---------------
listOfMembers[] //member id
---------------
}
public class ProgramCommittee extends Committee{
---------------
listOfMembers[] //member id
---------------
}
这是正确的方式吗?