-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathSolution.java
More file actions
51 lines (31 loc) · 1.71 KB
/
Solution.java
File metadata and controls
51 lines (31 loc) · 1.71 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
//And saith unto him, Every man at the beginning doth set forth good wine; and when men have well drunk, then that which is worse:
//but thou hast kept the good wine until now. (John 2:10)
package com.javarush.task.task37.task3712;
import java.util.ArrayList;
import java.util.List;
/*
Шаблонный метод
*/
public class Solution {
public static void main(String[] args) {
List<Game> games = new ArrayList<>();
games.add(new Football());
games.add(new Basketball());
games.add(new Tennis());
for(Game game : games) {
game.run();
System.out.println("---------------------------------------------");
}
}
}
/*
Шаблонный метод
Классы Football, Basketball и Tennis описывают три популярные игры.
Спроси у своего любимого поисковика о паттерне Template method (Шаблонный метод) и сделай так, чтобы код написанный в методе main класса Solution имел смысл.
P.S. Класс Game должен быть абстрактным.
Требования:
1. Классы Football, Basketball и Tennis должны быть потомками класса Game.
2. В классе Game должны быть определены три абстрактных метода prepareForTheGame, playGame и congratulateWinner.
3. В классе Game должен быть реализован метод run, вызывающий методы prepareForTheGame, playGame и congratulateWinner в правильном порядке.
4. Класс Game должен быть абстрактным.
*/