当前位置: 首页 > news >正文

怎样用自己的电脑 做网站伍佰亿网站备案收费

怎样用自己的电脑 做网站,伍佰亿网站备案收费,网站开发语言开发,wordpress留言板设计一、工厂设计模式概述 ■什么是工厂设计模式 工厂模式(Factory Pattern)是开发中比较常用的设计模式之一。 它属于创建型模式(单例模式就是创建型模式的一种)#xff0c;这种模式让我们在创建对象时不会直接暴露创建逻辑#xff0c;而是通过使用一个共同的接口来完成对象的…一、工厂设计模式概述 ■什么是工厂设计模式 工厂模式(Factory Pattern)是开发中比较常用的设计模式之一。 它属于创建型模式(单例模式就是创建型模式的一种)这种模式让我们在创建对象时不会直接暴露创建逻辑而是通过使用一个共同的接口来完成对象的创建。 工厂模式可以分为三种分别是简单工厂模式、工厂方法模式以及抽象工厂模式(后面的两种模式都是基 于第一种模式进行的)我们主要来讲解简单工厂模式。 ■为什么要用工厂模式 其实工厂设计模式就是根据现实抽象过来的模式 我们在Java中习惯要用什么对象就去找它的类去new,主要其实并不好类与类的耦合度会比较高而且我们现实中也不会你需要买什么东西就跑去生产车间里去买吧我们生活中更多的是一个商店或者是商场把对应的商品从生产线上购买到店里来然后你需要什么跟老板说你要买的商品名称老板就提供给你。 由商店来管理这些对象我们不关心这些商品的生产细节。 ■工厂设计模式的优点 ➢调用者想创建一一个对象只要知道其名称(也就是不同的标签)就可以在工厂获取具体的 对象; ➢扩展性强如果想增加一个产品(也就是具体的对象)只要扩展工厂类就可以(也就是 增加不同的标签增加不同标签所对应的对象) ; ➢屏蔽产品的具体实现调用者只关心产品的接口、无需关心内部实现; ➢面向接口编程体现了面向对象的思想; 二、demo 1、使用统一的接口来管理不同的类 public class FactoryDemo1 {public static void main(String[] args) {Fruit apple new Apple();Fruit banane new Banane();apple.eat();banane.eat();} } interface Fruit{void eat(); } class Apple implements Fruit{public void eat() {System.out.println(苹果真好吃);} } class Banane implements Fruit{public void eat() {System.out.println(香蕉真好吃);} } 2、使用一个统一的类对象生产车间来管理对象的生产 public class FactoryDemo2 {public static void main(String[] args) {FruitFatory fatory new FruitFatory();Fruit apple fatory.getApple();Fruit banane fatory.getBanane();apple.eat();banane.eat();} } class FruitFatory{public Fruit getApple() {return new Apple();}public Fruit getBanane() {return new Banane();} } interface Fruit{void eat(); } class Apple implements Fruit{public void eat() {System.out.println(苹果真好吃);} } class Banane implements Fruit{public void eat() {System.out.println(香蕉真好吃);} } 3、使用一个工厂来生产多个不一样的水果 public class FactoryDemo3 {public static void main(String[] args) {Fruit apple FruitFatory.getApple();Fruit banane FruitFatory.getBanane();apple.eat();banane.eat();} } class FruitFatory{public static Fruit getApple() {return new Apple();}public static Fruit getBanane() {return new Banane();} } interface Fruit{void eat(); } class Apple implements Fruit{public void eat() {System.out.println(苹果真好吃);} } class Banane implements Fruit{public void eat() {System.out.println(香蕉真好吃);} }4、使用工厂的一个方法就能够构建不同的对象 public class FactoryDemo4 {public static void main(String[] args) {Fruit apple FruitFatory.getFruit(apple);Fruit banane FruitFatory.getFruit(banane);apple.eat();banane.eat();} } class FruitFatory{public static Fruit getFruit(String fruitName) {if(apple.equalsIgnoreCase(fruitName)) {return new Apple();}else if(banane.equalsIgnoreCase(fruitName)) {return new Banane();}else {return null;}}} interface Fruit{void eat(); } class Apple implements Fruit{public void eat() {System.out.println(苹果真好吃);} } class Banane implements Fruit{public void eat() {System.out.println(香蕉真好吃);} } 5、终极版 加入反射 /src/lession14/entity public interface Fruit {void eat(); } public class Pear implements Fruit{Overridepublic void eat() {System.out.println( 梨真好吃 );}}public class Banane implements Fruit{public void eat() {System.out.println( 香蕉真好吃 );} } public class Apple implements Fruit{public void eat() {System.out.println( 苹果真好吃 );} } /*** * 想让你的工厂直接不需要进行频繁的更改它也可以顺利的生产出* 我们想要的对象**/ public class FactoryDemo5 {public static void main(String[] args) throws ClassNotFoundException, InstantiationException, IllegalAccessException {Fruit apple FruitFatory.getFruit(apple);Fruit banane FruitFatory.getFruit(banane);Fruit pear FruitFatory.getFruit(pear);apple.eat();banane.eat();pear.eat();} } class FruitFatory{public static Fruit getFruit(String className) throws ClassNotFoundException, InstantiationException, IllegalAccessException {Class? classObj Class.forName(lession14.entity.initClassName(className));return (Fruit) classObj.newInstance();}public static String initClassName(String className) {StringBuilder sb new StringBuilder();return sb.append((className.charAt(0)).toUpperCase()).append(className.substring(1).toLowerCase()).toString();} } 在Demo2中我们已经可以通过-一个工厂类来构建具体的类对象了但是还需要像调用方法一样来操作 并且不同的对象不同的方法名能否进一步 进行优化? 到Demo3中我们直接使用一个统一-的方 法来获取不同的对象在方法内部进行名字的判断就可以了然后通过new或者是通过反射来获取到指定的对象。 在该模式中工厂类是整个模式的关键。它包含必要的判断逻辑(比如根据外界给定的信息决定究竟应该创建哪个具体类的对象)。用户在使用时可以直接根据工厂类去创建所需的实例而无需了解这些对象是如何创建以及如何组织的。有利于整个软件体系结构的优化。 但是简单工厂模式的缺点也正体现在其工厂类上由于工厂类集中了所有实例的创建逻辑所以“高内聚”方面做的并不好。并且当系统中的具体产品类不断增多时可能会出现要求工厂类也要做相应的修改扩展性并不很好。在具体调用比较麻烦。
http://www.w-s-a.com/news/64265/

相关文章:

  • 邹平网站建设公司报价网站建设备案多长时间
  • 三合一网站开发教程wordpress主题汉化中文版
  • 广州网站建设高端全网营销图片
  • 措勤网站建设罗定城乡建设局网站
  • 苏州建网站流程wordpress不显示内容你
  • 网站流量数据golang建设网站
  • 2020电商网站排行榜如何开设网站
  • 绍兴seo网站管理创新的网站建站
  • 做网站需要的图片网站的视频怎么下载
  • 教人做家务的网站滕州网站建设网站行吗
  • 湖北专业的网瘾学校哪家口碑好seo百度百科
  • 保定网站制作软件网页制作工具程
  • o2o网站建设教程计算机培训班培训费用
  • 赤峰网站制作php智能建站系统
  • 做高防鞋 哪个网站能上架net网站开发net网站开发
  • 做网站公司郑州推广计划步骤
  • 网站建设计无形资产外国做美食视频网站
  • 创立一个网站需要什么网推技巧
  • 网站的会员功能怎么做wordpress主题开拓右边栏
  • 做个一般的网站要多少钱nas 建网站
  • 网页设计作品源代码彼岸花坊网站seo测评
  • 用什么软件做动漫视频网站好环保网站设计价格
  • 合肥网站设计服投稿网站源码
  • 为什么很多网站用php做上海口碑最好的装修公司排名
  • 运城网站推广找人做小程序要多少钱
  • 做外链哪个网站好seo诊断网站
  • 网站建设与管理考查方案上海公司免费起名
  • 哪个网站做h5好做汽车网站
  • 汝州网站制作住房和城乡建设部官网进行查询
  • 怎么做整人点不完的网站获取网站访客qq号码源码