线程不安全与线程安全 示例代码: 线程不安全与线程安全 执行结果: 线程不安全与线程安全 工作原理: 当主程序启动时,创建了一个Counter类的对象。该类定义了一个可以递增和递减的简单的计数器。然后我们启动了三个线程。这三个线程共享同一个counter实例,在一个周期中进行一次递增和一次递减。这将 ...
分类:
编程语言 时间:
2018-01-26 12:45:23
阅读次数:
207
装饰器模式,顾名思义起的是装饰的作用,就是在一个类上增加功能。如果通过继承来增加功能,在不修改代码的情况下,如果增加功能多的话,会使类的数量爆炸式增长,为管理带来巨大的麻烦。装饰器模式就比较好地解决了这一点。 以上为装饰器模式的通用类图: Component,一般是接口或者抽象类,定义了最简单的方法 ...
分类:
其他好文 时间:
2018-01-25 00:23:50
阅读次数:
168
在copy一个对象时(用一个对象去初始化另外一个对象),会调用类中的拷贝构造函数。如果我们自己没有在类里面写拷贝构造函数,则C++编译器会调用默认的拷贝构造函数。 浅拷贝:如果类定义的对象包含的某个成员是动态内存分配产生的(指针变量成员),你先用该类定义了一个对象1,然后又用这个对象1去初始化另外一 ...
分类:
其他好文 时间:
2018-01-23 13:12:49
阅读次数:
215
如题,如果在一个对象中的实例属性不能被改变,需要设置成不可变量的时候采用如下方法:1.将类定义成final类型 2.将实例变量定义成final类型 3.将实例变量的set方法去除 4.将在构造方法中克隆一份数据设置给实例变量 5.将在get方法中将实例变量克隆一份赋值返回给用户 ...
分类:
其他好文 时间:
2018-01-23 01:08:43
阅读次数:
186
面向对象编程 — 类定义与实例化 类中的变量是类的数据属性,函数为类的方法(函数)属性 类定义的所有变量和函数都会被存在dict的字典中(命名空间) 类在定义之后代码就可以被执行,不需要被调用 类中的变量是类的数据属性,函数为类的方法(函数)属性 类定义的所有变量和函数都会被存在dict的字典中(命 ...
分类:
编程语言 时间:
2018-01-21 22:30:46
阅读次数:
186
"从零开始学Kotlin基础篇系列文章" 定义一个类 定义一个类,使用关键字class声明,后面跟类名(不使用new) 定义类的属性 类的属性可以使用var和val定义 创建类的实例以及获取类中的属性 类的修饰符: classModifier 和 accessModifier classModifi ...
分类:
其他好文 时间:
2018-01-21 21:34:40
阅读次数:
177
1. 启动任何一个Spring Boot项目,都会用到如下类 从上面代码可以看出,Annotation定义@SpringBootApplication和类定义SpringApplication.run是关键所在. 2. @SpringBootApplication 点开@SpringBootAppl ...
分类:
编程语言 时间:
2018-01-20 16:19:16
阅读次数:
287
StringTokenizer字符串标记生成器 原创,转发请注明 类定义 该类属于保留类,现多实用String类的split方法进行分割。 构造方法: 主要方法 实例 结果 由此可以看出: StringTokenizer中的分隔符字符串是对每个字符分隔然后求和; String的分隔字符串是使用分割字 ...
分类:
其他好文 时间:
2018-01-19 18:45:00
阅读次数:
166
1.首先新建个文件夹命名为behavior;2.在文件夹下面新建一个类,如Auth类;3.定义命名空间<?phpnamespaceapp\admin\behavior;//Config存入的是json配置数据,引入模型方便读取数据。useapp\admin\model\Config;//引入这个就是为了方便可以使用提示方法如:$this->success();$this->suc
分类:
Web程序 时间:
2018-01-19 16:50:21
阅读次数:
345
定义 队列是一种特殊的线性表,它只允许在表的前端进行删除操作,而在表的后端进行插入操作。 LinkedList类实现了Queue接口,因此我们可以把LinkedList当成Queue来用 图例 Queue本身是一种先入先出的模型(FIFO),和我们日常生活中的排队模型很类似。根据不同的实现,他们主要 ...
分类:
编程语言 时间:
2018-01-19 14:16:25
阅读次数:
279