0


CGB2108day17

一、设计模式

概念:是一些前人总结出来的值得学习的编程"套路",设计模式一共有23种

单例设计模式:确保代码中本类的实例只有一个

实现思路:

方案一:饿汉式

1)把本类的构造方法私有化—为了不让外界调用构造函数来创建对象

2)通过本类的构造方法创建对象,并把这个对象也私有化,为了防止外界调用

3)提供一个公共且静态的方法,返回刚刚创建好的对象

注意:公共方法需要设置成静态--需要跳过对象,通过类名直接调用这个返回本类对象的公共方法

方案二:饿汉式

延迟加载的思想:我们有的时候有些资源并不是需要第一时间就创建出来,所以需要延迟到需要时再创建,这样既可以提示性能,又可以节省资源

1)把本类的构造方法私有化--为了不让外界调用构造函数来创建对象

2)创建了一个本类类型的引用类型变量【这个变量后续用来保存创建出来的对象的地址值】

3)提供一个公共且静态的方法,返回刚刚创建好的对象

注意1:这个公共的方法里,需要做判断

1.如果变量的值为初始值null:说明之前没有创建过对象,创建对象后再将对象的地址值赋值给引用类型变量,并把它返回

2.如果引用类型的变量值不为null,说明:之前已经创建过对象了,这个引用类型变量保存就是地址值,本次不再新建对象,直接返回

注意2:由于有共享数据,并且多条语句操作这个single2,所以注意同步

二、注解

1.JDK自带的注解(5个)

2.元注解

@Target({ElementType.TYPE,ElementType.FIELD,ElementType.METHOD})

表示被描述的注解的声明周期:注意值只能三选一

@Retention(RentionPolicy.RUNTIME/SOURCE/CLASS)

3.自定义注解

三、反射

1.反射的概念

当我们想要使用别人的东西的或者查看某些资源的时候,可以使用反射技术

自比如,开发时候,有时并不能直接看到源代码,也可以通过反射获取

2反射的前提:获取字节码对象

在Java中可以将对象分为两类:字节码对象和实例对象

字节码对象获取的三种方式:

1)类名.class

2)Class.forName(“目标的全路径”)

3)目标类对象.getClass()

注意:字节码对象是获取目标对象所有信息的入口

3.反射的常用方法

1)获取包对象:clazz.getPackage()

2)先获取包对象,再获取包对象的名字:clazz.getPackage().getName()

3)获取类名:

clazz.getName() --打印的是全路径名

clazz.getSimpleName() --打印的只有目标类的类名

4)获取目标类的所有方法:Method[] ms = clazz.getMethods();

标签: 语音识别

本文转载自: https://blog.csdn.net/m0_61448252/article/details/120795028
版权归原作者 且插梅花醉洛阳丶 所有, 如有侵权,请联系我们删除。

“CGB2108day17”的评论:

还没有评论