Home > Java > javaTutorial > Easily master Java template patterns

Easily master Java template patterns

高洛峰
Release: 2017-01-19 16:46:48
Original
1273 people have browsed it

Definition: An abstract class publicly defines the way/template to execute its methods. Its subclasses can rewrite the method implementation as needed, but the call will be made in the way defined in the abstract class

Features:

1. Encapsulate the constant part and extend the variable part.

2. Extract public code to facilitate maintenance.

3. Behavior is controlled by the parent class and implemented by the subclass.

Enterprise-level development and applications in common frameworks: Implementation of hibernate in spring (open transactions, open sessions, close sessions)

Examples: The following is an example of playing games, all games are played There are two operations every time, opening the game and closing the game, but the way of playing in the middle is different. Let’s look at the actual example below.

public class Demo {
 public static void main(String[] args) {
 Game g1 = new LOL();
 Game g2 = new CF();
 g1.playGame();
 g2.playGame();
 }
}
 
abstract class Game{
 protected void init(){
 System.out.println("初始化游戏并登陆游戏。。。");
 }
 public abstract void play();
 protected void end(){
 System.out.println("结束游戏并退出登录。。。");
 }
 public void playGame(){
 init();
 play();
 end();
 }
}
 
class LOL extends Game{
 public void play() {
 System.out.println("玩英雄联盟游戏");
 }
}
 
class CF extends Game{
 public void play() {
 System.out.println("玩创越火线游戏");
 }
}
Copy after login

The template pattern is actually the application of abstract classes. This pattern is relatively simple and is used more in actual development.

The above is the entire content of this article. I hope it will be helpful to everyone's learning. I also hope that everyone will support the PHP Chinese website.

For more articles related to easily mastering Java template mode, please pay attention to the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template