Advertisement
Guest User

Untitled

a guest
Apr 27th, 2017
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.84 KB | None | 0 0
  1. package com.javarush.task.task13.task1306;
  2. /*
  3. Баг в initializeIdAndName
  4. 1. Подумать, что в программе неправильно.
  5. 2. Вынести реализацию метода initializeIdAndName в класс User.
  6. 3. initializeIdAndName в классе User должен возвращать тип User.
  7. 4. Поправить программу, чтобы компилировалась и работала.
  8. Требования:
  9. 1. Интерфейс DBObject должен содержать только объявление метода initializeIdAndName без реализации.
  10. 2. Реализуй метод initializeIdAndName в классе User.
  11. 3. Метод initializeIdAndName в классе User должен иметь тип возвращаемого значения User.
  12. 4. Метод initializeIdAndName должен присваивать значения полям id и name в соответствии с переданными ему параметрами.
  13. */
  14. public class Solution {
  15. public static void main(String[] args) throws Exception {
  16. System.out.println(Matrix.NEO);
  17. System.out.println(Matrix.TRINITY);
  18. }
  19.  
  20. static class Matrix {
  21. public static DBObject NEO = new User().initializeIdAndName(1, "Neo");
  22. public static DBObject TRINITY = new User().initializeIdAndName(2, "Trinity");
  23. }
  24.  
  25. interface DBObject {
  26. DBObject initializeIdAndName(long id, String name);
  27. }
  28.  
  29. static class User implements DBObject {
  30. long id;
  31. String name;
  32.  
  33. public User initializeIdAndName(long id, String name) {
  34. this.id = id;
  35. this.name = name;
  36. return this;
  37. }
  38.  
  39. @Override
  40. public String toString() {
  41. return String.format("User has name %s, id = %d", name, id);
  42. }
  43. }
  44. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement