Spaces:
Running
Running
| Let's start by implementing a football match in the Player class. | |
| So write a class Player with the following properties: | |
| Attribute 'number' (integer) | |
| Attribute 'name' (string) | |
| A constructor that takes the number and name as parameters and sets the values of the attributes | |
| Get methods for number and name (name in the form 'getName') | |
| Set methods for number and name (name of the form 'setName') | |
| Note! As usual, the class must not be public - so do not use the attribute public in the definition. | |
| import java.util.Random; | |
| import java.lang.reflect.Field; | |
| public class Test{ | |
| public static void main(String[] args){ | |
| final Random r = new Random(); | |
| System.out.println("Testing class Player..."); | |
| Player pl = new Player(10, "Pele"); | |
| System.out.println("Player object created!"); | |
| try { | |
| Field number = pl.getClass().getDeclaredField("number"); | |
| boolean numberPrivate = number.getModifiers() == 2; | |
| System.out.println("Number is private: " + numberPrivate); | |
| } catch (Exception e) { | |
| System.out.println("Attribute number is not defined"); | |
| } | |
| try { | |
| Field name = pl.getClass().getDeclaredField("name"); | |
| boolean namePrivate = name.getModifiers() == 2; | |
| System.out.println("Name is private: " + namePrivate); | |
| } catch (Exception e) { | |
| System.out.println("Attribute name is not defined"); | |
| } | |
| System.out.println("Testing observation methods..."); | |
| System.out.println("Name: " + pl.getName()); | |
| System.out.println("Number: " + pl.getNumber()); | |
| System.out.println("Testing setting methods..."); | |
| pl.setName("Ronaldo"); | |
| pl.setNumber(7); | |
| System.out.println("Name: " + pl.getName()); | |
| System.out.println("Number: " + pl.getNumber()); | |
| } | |
| } | |
| // ADD | |
| class Player { | |
| // attributes | |
| private int number; | |
| private String name; | |
| // constructor | |
| public Player(int number, String name) { | |
| this.number = number; | |
| this.name = name; | |
| } | |
| public int getNumber() { | |
| return this.number; | |
| } | |
| public String getName() { | |
| return this.name; | |
| } | |
| public void setNumber(int number) { | |
| this.number = number; | |
| } | |
| public void setName(String name) { | |
| this.name = name; | |
| } | |
| } | |
| Testing class Player... | |
| Player object created! | |
| Number is private: true | |
| Name is private: true | |
| Testing observation methods... | |
| Name: Pele | |
| Number: 10 | |
| Testing setting methods... | |
| Name: Ronaldo | |
| Number: 7 | |