java语言factory_一个简单例子解释 Java factory
其实工厂模式结构并不复杂,其目的只有一个就是解耦.废话少说看例子吧.这个HelloWorld就足够说明工厂模式在Java语言里的实现方法.
/** *//**
* IOC模式简单实例
*/
/** *//**
* 运行类
*/
public class MainClass {
/** *//**
* 主函数
*/
public static void main(String[] args) {
try {
PrinterFactory.createPrinter().printByString("Hello World~!");
} catch (Exception ex) {
System.out.println(ex.toString());
}
}
}
/** *//**
* Printer接口
*/
interface IF_Printer {
/** *//**
* 接口printByString方法声明
*/
public void printByString(String str);
}
/** *//**
* MyPrinter实现Printer接口
*/
class MyPrinter implements IF_Printer {
public void printByString(String str) {
System.out.println(str);
}
}
/** *//**
* IF_Printer对象工厂,用于创建实现接口的类对象
*/
class PrinterFactory {
/** *//**
* 工厂方法,返回IF_Printer接口实例
*/
public static IF_Printer createPrinter() throws InstantiationException,
ClassNotFoundException, IllegalAccessException {
String str = "MyPrinter";//通过字符串寻找实现接口的类,字符串可从文件中读取获得,从而实现IOC模式
return (IF_Printer) Class.forName(str).newInstance();//返回IF_Printer接口实例
}
}
java语言factory_一个简单例子解释 Java factory相关推荐
- Java语言写一个简单的学生信息管理系统,通过JDBC连接数据库对学生信息进行增删改查,采用三层思想和DBUtils第三方框架。
我把源代码和sql文件放GitHub上了,你们可以自行下载:https://github.com/fenglily1/student. 有问题可以留言或私信,我看到就会回. 进阶版加上页面的管理系统在 ...
- 用Java语言写一个简单的值日生
public class Student {protected String name;public static void main(String[] args) {while(true) {//用 ...
- Java Virtual Machine:Java语言的一个非常重要的特点就是与平台的无关性
Java语言的一个非常重要的特点就是与平台的无关性.而使用Java虚拟机是实现这一特点的关键.一般的高级语言如果要在不同的平台上运行,至少需要编译成不同的目标代码.而引入Java语言虚拟机后,Java ...
- java爬取网页内容 简单例子(2)——附jsoup的select用法详解
[背景] 在上一篇博文 java爬取网页内容 简单例子(1)--使用正则表达式 里面,介绍了如何使用正则表达式去解析网页的内容,虽然该正则表达式比较通用,但繁琐,代码量多,现实中想要想出一条简单的正则 ...
- 使用Java语言打印一个心形图案
要使用 Java 语言打印一个心形图案,你可以使用两个 for 循环和一些字符串拼接来实现.你也可以使用 ASCII 码来打印心形图案,这将更加简单. 以下是使用两个 for 循环和字符串拼接的示例代 ...
- JAVA同时输入用户名和密码_用java模拟设计一个简单的“用户注册”程序。当用户输入用户名和密码时,单击“注...
用java模拟设计一个简单的"用户注册"程序.当用户输入用户名和密码时,单击"注 2020 - 9 - 26 TAG : 所有功能均已实现,如有不满意的地方我再修改imp ...
- JAVA编写的一个简单的Socket实现的HTTP响应服务器
JAVA编写的一个简单的Socket实现的HTTP响应服务器,看后就很容易理解Web服务器的原理了. package test.io;import java.net.*; import java.io ...
- 使用Java语言编写一个五子棋UI界面并实现网络对战功能(非局域网)
使用Java语言编写一个五子棋UI界面并实现网络对战功能(非局域网) 一,前期准备 1,Java IDE(Eclipse)与JDK的安装与配置 jdk-15.0.1-免配置路径版 提取码:earu 免 ...
- 用java语言画一个可视化日历
用java语言画一个可视化的日历界 package com.zzit.calFrame;import java.text.DateFormat; import java.text.ParseExcep ...
最新文章
- android 安装 apk 7.0,android 7.0及以上版本安装apk
- 化工设备与反应器 第三章 直梁的弯曲
- 针对【H-2017年信息基础班(周一班)】某些同学恶意使用lyl洛谷的谴责
- WPF实现拟物旋转按钮
- redis创建集群报错can‘t connect to node 192.168.163.203
- link2001错误无法解析外部符号metaObject
- 多软件启动器 v1.0
- python3怎么用_当同时安装Python2和Python3后,如何兼容并切换使用详解(比如pip使用)...
- 2016.05.07华为网盘-将会暂停服务的网站一览 - 做好数据迁移的准备哦
- Spring的junit4测试集成
- 苹果8黑屏无法强制开机_iphonexsmax死机黑屏,iphonexsmax无法开机
- java基础——浅析设计模式之单例模式
- bp神经网络的应用案例,bp神经网络数学模型
- FFT算法(Java实现)
- 浏览器怎么截图,这个快捷键截图也太好用了吧
- 计算机课里的余数是什么,余数
- 易语言修改IP和DNS
- 游戏市场阴影下的游戏手机厂商,和他们无法触碰的未来
- Action Unit Memory Network for Weakly Supervised Temporal Action Localization 笔记
- 无线回程mesh组网从入门到精通【伸手党福利】打破行业壁垒!