Advertisement
Guest User

Untitled

a guest
Aug 20th, 2017
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.38 KB | None | 0 0
  1. //Dog.java
  2. public interface MyDog {
  3. public void sleep();
  4. public void eat();
  5. public void printAll();
  6. }
  7.  
  8. //MyDogImpl.java
  9. public class MyDogImpl implements MyDog {
  10.  
  11. public void sleep() {
  12. System.out.println("mydog sleep");
  13. }
  14.  
  15. public void eat() {
  16. System.out.println("mydog eat");
  17. }
  18.  
  19. public void printAll() {
  20. sleep();
  21. eat();
  22. }
  23.  
  24. }
  25.  
  26. //NewDog.java
  27. public interface NewDog {
  28. public void sleep();
  29. public void eat();
  30. }
  31.  
  32. //NewDogImpl.java
  33. public class NewDogImpl implements NewDog {
  34.  
  35. public void sleep() {
  36. System.out.println("new dog sleep");
  37. }
  38.  
  39. public void eat() {
  40. System.out.println("new dog eat");
  41. }
  42.  
  43. }
  44.  
  45. //NewDogAdapter.java
  46. public class NewDogAdapter implements MyDog {
  47.  
  48. NewDog newDog;
  49.  
  50. public NewDogAdapter(NewDog newDog) {
  51. this.newDog = newDog;
  52. }
  53.  
  54. public void sleep() {
  55. newDog.sleep();
  56. }
  57.  
  58. public void eat() {
  59. newDog.eat();
  60. }
  61.  
  62. public void printAll() {
  63. sleep();
  64. eat();
  65. }
  66.  
  67. }
  68.  
  69. //AdapterExample.java
  70. public class AdapterExample {
  71.  
  72. public static void main(String[] args) {
  73. //기존 코드
  74. MyDogImpl myDog = new MyDogImpl();
  75. myDog.eat();
  76. myDog.sleep();
  77. myDog.printAll();
  78.  
  79. //추가된 new dock 사용
  80. NewDogImpl newDog = new NewDogImpl();
  81. newDog.eat();
  82. newDog.sleep();
  83. newDog.sleep();
  84. newDog.eat();
  85.  
  86. //adapter 사용
  87. MyDog newDogAdapter = new NewDogAdapter(newDog);
  88. newDogAdapter.eat();
  89. newDogAdapter.sleep();
  90. newDogAdapter.printAll();
  91.  
  92. }
  93.  
  94. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement