随笔分类 - JAVA设计模式
java 反射的意义
摘要:具体的关于反射的介绍可以参考我的另外一篇博文《深入解析java反射》。 反射的意义是什么,其实就是为了代码简洁,提高代码的复用率,外部调用方便,源代码,反编译都能看到。 某些情况下解耦用反射要清晰很多,下面是简单的测试 输出:**吃苹果。 如果不用反射,那么我们如果再加一个西瓜类,就得在Factor
阅读全文
关于java反射里的.class、.getClass()、Class.Forname()
摘要:博主在研究java反射这一章节时,曾被三个方法困扰多时,.class、.getClass()、Class.Forname(),先上代码 这是类A 1 package cn.yonyong.net.tcp.reflection; 2 3 public class A { 4 private Strin
阅读全文
工厂模式
摘要:java设计模式--工厂模式 工厂模式要点: 简单工厂模式(静态工厂模式) 虽然某种程度不符合设计原则,但实际使用最多。 工厂方法模式 不修改已有类的前提下,通过增加新的工厂实现扩展。 抽象工厂模式 不可以增加产品,可以增加产品族。 应用场景 JDK中Calendar的getInstance方法 J
阅读全文
懒汉式与饿汉式的区别
摘要:java设计模式单例模式 懒汉式与饿汉式的区别 常用的五种单例模式实现方式 ——主要: 1.饿汉式(线程安全,调用率高,但是,不能延迟加载。) 2.懒汉式(线程安全,调用效率不高,可以延时加载。) ——其他: 1.双重检测锁式(由于JVM底层内部模型原因,偶尔会出问题,不建议使用) 2.静态内部类式
阅读全文
Java 反射
摘要:在java中,只要给定类的名字,就可以利用反射机制来获得类的信息,类中有什么信息,利用反射机制就能可以获得什么信息,不过前提是得知道类的名字。 java 反射是 Java 被视为动态(或准动态)语言的一个关键性质。这个机制允许程序在运 行时透过 Reflection APIs 取得任何一个已知名称的
阅读全文
JAVA反射中的getFields()方法和getDeclaredFields ()方法的区别
摘要:JAVA反射中的getFields()方法和getDeclaredFields ()方法的区别 关于获取类的字段有两种方式:getFields()和getDeclaredFields()。我们先来看看这两者的区别吧: getFields():获得某个类的所有的公共(public)的字段,包括父类中的
阅读全文
装饰器模式
摘要:JAVA设计模式--装饰器模式 装饰器模式 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装。 这种模式创建了一个装饰类,用来包装原有的类,并在保持类方法签名完整性的前提下,提供了额外的
阅读全文
浙公网安备 33010602011771号