有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

类java解释正确吗

我有下面的问题,想知道我对这个问题的解释是否正确。我对Java和编程还不熟悉,所以技术术语甚至认为我读过我的教科书并理解了它们,我不确定我是否正确编程了它们。请看问题并让我知道我所做的是否正确

enter image description here

问题本身:

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) 个答案

  1. # 1 楼答案

    一般来说,如果你接受另一个答案中的评论,就可以了

    然而,您的命名约定有点古怪。标准的JavaBean约定是用camelCase(所以是markquick而不是mark_quick)来命名你的属性(你的int等等),把你的getter和setter命名为getmarkquick和setmarkquick(get/set后面的第一个字母现在大写),对于布尔属性,使用isXxx()而不是getXxx()

    这些约定被广泛使用,并将使您的代码更加工具友好(使用ECLIPSE/netbeans等IDE)

    关于你在提问后的评论,家庭作业问题通常是不受欢迎的,这就是你被否决的原因。你将通过游戏和实验,犯错,然后纠正错误,而不是来到这里寻求答案,学到更多的东西。至少你提供了一个基本答案,所以你正在考虑,做得很好。继续