Java fundamentals through coding exercises
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

74 lines
1.9 KiB

4 years ago
4 years ago
4 years ago
  1. Tässä tehtävässä harjoittelemme toString-metodin määrittelyä muokkaamalla valmista koodia. Seuraavaksi on esitetty luokka Agentti, jolla on etunimi ja sukunimi:
  2. ```
  3. public class Agentti {
  4. private String etunimi;
  5. private String sukunimi;
  6. public Agentti(String etunimi, String sukunimi) {
  7. this.etunimi = etunimi;
  8. this.sukunimi = sukunimi;
  9. }
  10. public void tulosta() {
  11. System.out.println("My name is " + sukunimi + ", " + etunimi + " " + sukunimi);
  12. }
  13. }
  14. ```
  15. Luokalle on määritelty metodi tulosta, joka luo seuraavanlaisen merkkijonoesityksen:
  16. ```
  17. Agentti bond = new Agentti("James", "Bond");
  18. bond.tulosta(); // Tulostaa: My name is Bond, James Bond
  19. ```
  20. Tallenna luokka itsellesi tiedostoon Agentti.java ja poista luokan metodi tulosta. Luo luokalle uusi metodi public String toString(), joka palauttaa edellämainitun merkkijonoesityksen.
  21. Luokan tulee toimia jatkossa seuraavasti:
  22. ```
  23. Agentti bond = new Agentti("James", "Bond");
  24. bond.toString(); // ei tulosta mitään
  25. System.out.println(bond); // Tulostaa: My name is Bond, James Bond
  26. Agentti ionic = new Agentti("Ionic", "Bond");
  27. System.out.println(ionic); // Tulostaa: My name is Bond, Ionic Bond
  28. ```
  29. ```
  30. Example output:
  31. = Suoritetaan koodi =
  32. Agentti agentti = new Agentti("Johnny" , "English");
  33. System.out.println(agentti);
  34. = Ohjelman tuloste =
  35. My name is English, Johnny English
  36. ```
  37. ------------------
  38. **Agentti.java**
  39. ```
  40. public class Agentti {
  41. private String etunimi;
  42. private String sukunimi;
  43. public Agentti(String etunimi, String sukunimi) {
  44. this.etunimi = etunimi;
  45. this.sukunimi = sukunimi;
  46. }
  47. /*
  48. public void tulosta() {
  49. System.out.println("My name is " + sukunimi + ", " + etunimi + " " + sukunimi);
  50. }
  51. */
  52. public String toString() {
  53. return "My name is " + this.etunimi + ", " + this.sukunimi;
  54. }
  55. }
  56. ```