hi i need help with writing a program...I have to Write a program that simulates a student registration. A button allows entering a student name. Three more buttons are used to enter test scores. Name and test scores are entered into a text field. The information about the student, including student's name, score1, score2, score3, score average and the highest score are continully displayed. Design and write a class called Student. A Student object contains a student's name and three test scores and responds to the following messages.
Student() - a constructor that creates a student object. It initializes name to an empty string and sets all three test scores to 0.
setName(String aName) - sets the name of a student to aName.
getName() - returns the name of a student.
setScore(int whichTest, int testScore) - sets the score of whichTest(means test1 or test2 or test3) to testScore. Variable WhichTest indicates test number (test1, test2 or test3). Variable testScore indicates actual score (eg. 88, 76 etc.) on whichTest.
getScore(int whichTest) - returns the score on whichTest
getAverage() - returns the average of the test scores
getHighScore() - returns the highest test score.
The code below is what i have so far...i think it is right.. but nothing happens when i run the program. PLEASE HELP!
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.util.*;
public class Student extends JFrame implements ActionListener {
// declare some GUI components
private String aName;
private String name;
private JPanel panel;
private JButton setName;
private JTextField textField;
private JButton setScoreOne;
private JButton setScoreTwo;
private JButton setScoreThree;
int scoreOne, scoreTwo, scoreThree;
public Student(String name, int gradeOne, int gradeTwo, int gradeThree){
name = "";
scoreOne = 0;
scoreTwo = 0;
scoreThree = 0;
}
public static void main(String[] args) {
Student demo = new Student();
demo.setSize(250, 400);
demo.setTitle("Test Scores");
demo.createGUI();
demo.setVisible(true);
}
private void createGUI() {
setDefaultCloseOperation(EXIT_ON_CLOSE...
Container window = getContentPane();
window.setLayout(new FlowLayout());
panel = new JPanel();
panel.setPreferredSize(new Dimension(150, 200));
panel.setBackground(Color.white);
window.add(panel);
//creates button that shows students score
setName = new JButton ("Set Name");
window.add(setName);
setName.addActionListener(this);
setScoreOne = new JButton("Set Test Score One");
window.add(setScoreOne);
setScoreOne.addActionListener(this);
setScoreTwo = new JButton ("Set Test Score Two");
window.add(setScoreTwo);
setScoreTwo.addActionListener(this);
setScoreThree = new JButton ("Set Test Score Three");
window.add(setScoreThree);
setScoreThree.addActionListener(this);
//creates size of the text field showing how many steps it took to leave town
textField = new JTextField(20);
window.add(textField);
}//end of createGUI
public void actionPerformed(ActionEvent event) {
}
public void setName (String aName){
//Set a student's name
name = aName;
}
public String getName (){
//Get a student's name
return name;
}
public void setScore (int whichTest, int score){
if (whichTest == 1) scoreOne = 86;
else if (whichTest == 2) scoreTwo = 90;
else scoreThree = 73;
}
public int getScore (int whichTest){
//Retrieve score for which test
if (whichTest == 1) return scoreOne ;
else if (whichTest == 2) return scoreTwo;
else return scoreThree;
}
public int getAverage(){
//Calculates and returns the average
int average;
average = (int) ((scoreOne + scoreTwo + scoreThree) / 3.0f);
return average;
}
public int getHighScore(){
//Determine and return the highest score
int highScore;
highScore = scoreOne;
if (scoreTwo > highScore) highScore = scoreTwo;
if (scoreThree > highScore) highScore = scoreThree;
return highScore;
}
private Student(){
scoreOne=86;
scoreTwo=90;
scoreThree=73;
}
public String toString(){
//Construct and return a string representation of the student
String str;
str = "Name: " + name + "\n" +
"Test 1: " + scoreOne + "\n" +
"Test 2: " + scoreTwo + "\n" +
"Test 3: " + scoreThree + "\n" +
"Average: " + getAverage();
return str;
}
}