类java解释正确吗
我有下面的问题,想知道我对这个问题的解释是否正确。我对Java和编程还不熟悉,所以技术术语甚至认为我读过我的教科书并理解了它们,我不确定我是否正确编程了它们。请看问题并让我知道我所做的是否正确
问题本身:
You are asked to implement a class to keep track of the students' academic result for a module. The system requires the following information about a student:
Student identification - a unique 7-digit identification that begins with 'S' for local students and 'F' for foreign student. E.g. S1234567.
Student name
Quiz mark - an integer number in the range of 0 to 100
Assignment mark - an integer number in the range of 0 to 100
Exam mark - a floating point number in the range of 0 to 100
Resit student - true if the student is retaking the paper, false otherwise. Resit student does not have quiz and assignment marks.
Write a Java class called Student and provide the following:
suitable instance variables for the information described above
constructor(s) with the appropriate actions on the instance variables
the accessor methods for the instance variables
the computeScore() method to compute the score as follows:
for resit students, take only the exam mark as the score
for other students, score is calculated by using the formula
9% * quiz + 21% * assignment + 70% * exam
The score calculated is to be rounded up to the nearest integer and returned.
the findGrade() method that returns the grade based on the score:
Score range
Grade
80 to 100
A
70 to 79
B
60 to 69
C
50 to 59
D
0 to 49
F
the toString() method that returns the attribute values as a string with description.
这就是我目前掌握的代码,对吗?我的意思是我声明构造函数的方式等等。。。tks
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package student_qn4;
/**
*
* @author
*/
public class Student
{
private String student_idno, student_name;
private int mark_quiz, mark_assig;
private float mark_exam;
private boolean student_resit;
public Student (String id, String name , int quizM , int assignM , int examM) {
studentId = id;
studentName = name;
quizMark = quizM;
assignMark = assignM;
examMark = examM;
}
public void setStudentnumber(String number)
{
student_idno = number;
}
public String getStudentnumber()
{
return student_idno;
}
public void setStudentname(String name)
{
student_name = name;
}
public String getStudentname()
{
return student_name;
}
public void setquizMark(int quizmarks)
{
mark_quiz = quizmarks;
}
public int getquizMark()
{
return mark_quiz;
}
public void setassigMark(int assigmarks)
{
mark_assig = assigmarks;
}
public int getassigMark()
{
return mark_assig;
}
public int computerScore()
{
/*do as the program asks then return the computer score */
}
public String findGrade()
{
// Based on the computeScore() I have to access what is the grade and return that
}
public String toString()
{
// What is this method supposed to do?
}
}
# 1 楼答案
一般来说,如果你接受另一个答案中的评论,就可以了
然而,您的命名约定有点古怪。标准的JavaBean约定是用camelCase(所以是markquick而不是mark_quick)来命名你的属性(你的int等等),把你的getter和setter命名为getmarkquick和setmarkquick(get/set后面的第一个字母现在大写),对于布尔属性,使用isXxx()而不是getXxx()
这些约定被广泛使用,并将使您的代码更加工具友好(使用ECLIPSE/netbeans等IDE)
关于你在提问后的评论,家庭作业问题通常是不受欢迎的,这就是你被否决的原因。你将通过游戏和实验,犯错,然后纠正错误,而不是来到这里寻求答案,学到更多的东西。至少你提供了一个基本答案,所以你正在考虑,做得很好。继续