41 lines
1.3 KiB
Plaintext
41 lines
1.3 KiB
Plaintext
lesson 1:
|
|
- static initializer used in Mines.java
|
|
- static initializer used in MinesUI.java
|
|
- method overloading in Mines.java > startNewGame()
|
|
|
|
lesson 2:
|
|
- inheritance in Mines.java (extends GameBoard)
|
|
- custom exception in InvalidMoveException.java
|
|
- throwing exception in Mines.java > reveal()
|
|
- catching exception in MinesUI.java > handleReveal()
|
|
|
|
lesson 3:
|
|
- method overriding in Mines.java > reset()
|
|
- substitution via GameBoard parent reference in constructor chain
|
|
|
|
lesson 4:
|
|
- abstract class in GameBoard.java
|
|
- abstract method reset() in GameBoard.java
|
|
- implementation of abstract method in Mines.java > reset()
|
|
|
|
lesson 5:
|
|
- collections in MinesUI.java > List<Button> buttons
|
|
- iterators in MinesUI.java > disableAllButtons()
|
|
|
|
lesson 6:
|
|
- lambda expressions in Mines.java > forEachNeighbor()
|
|
- lambda expressions in MinesUI.java > button.setOnMouseClicked()
|
|
|
|
lesson 8:
|
|
- Scanner used in Mines.java > loadBestScore()
|
|
- BufferedReader used in Mines.java > loadBestScore()
|
|
- BufferedWriter used in Mines.java > saveScore()
|
|
- File used in Mines.java > loadBestScore()
|
|
|
|
lesson 9:
|
|
- JavaFX GUI in MinesUI.java
|
|
- JavaFX application entry class in MyGame.java > start()
|
|
|
|
lesson 10:
|
|
- unit tests to be shown in accompanying JUnit test files
|