学习整理 饱汉模式(懒汉模式) 优点:懒加载启动快,资源占用小,使用时才实例化,无锁。 缺点:非线程安全。 饱汉模式(懒汉模式)--线程安全 优点:同上,但加锁了。 缺点:synchronized 为独占排他锁,并发性能差。即使在创建成功以后,获取实例仍然是串行化操作。 饱汉模式(懒汉模式)--双重 ...
分类:
编程语言 时间:
2018-01-09 16:43:17
阅读次数:
188
异常机制是指当程序出现错误后,程序如何处理。 当异常抛出后,会发生以下几件事。首先,同Java中创建其他对象一样,将使用new在堆上创建异常对象。 然后,当前的执行路径被终止,并且从当前环境中弹出对异常对象的引用,此时,异常处理机制接管程序。 并开始寻找一个恰当的地方来继续执行程序。 例如,在par ...
分类:
编程语言 时间:
2018-01-01 23:38:33
阅读次数:
321
1.单例模式 单例模式是程序设计模式中的一种。是为了保证整个应用中某个实例有且只有一个。 应用场合:开发中有些对象只需要一个。 特点:有且只有一个。 单例模式分为两种: 饿汉模式 懒汉模式 2.饿汉模式 2.1创建饿汉单例模式 1.创建类Singleton,在类中把构造函数设为私有的private, ...
分类:
其他好文 时间:
2017-12-27 22:41:44
阅读次数:
197
单例模式:“一个类有且仅有一个实例,并且自行实例化向整个系统提供。” 单例模式实现方式有多种,例如懒汉模式(等用到时候再实例化),饿汉模式(类加载时就实例化)等,这里用饿汉模式方法实现,也就是类加载就实例化,单例模式应用场景有很多,比如一个应用有一套窗口化界面,Servlet中只有一个实例,应用很广 ...
分类:
编程语言 时间:
2017-12-23 17:11:56
阅读次数:
224
1.单例模式确保一个类只能创建一个实例。2.实现:不能让外界创建对象,所以构造器要私有化。提供获得单例对象的方法。(所以这个方法是公开的,并且这个方法里New出了对象)3.实例:饿汉模式:类加载时就创建对象,不管用不用,对象已经创建好了。线程安全(初始化就把对象创建好了,不会有多个线程创建多个对象的 ...
分类:
其他好文 时间:
2017-12-17 16:50:40
阅读次数:
97
1. Java的数据类型? 2. Java的封装类型? 3. 基本类型和封装类型的区别? 基本类型只能按值传递,而对应的封装类是按引用传递的。 基本类型是在堆栈上创建的,而所有的对象类型都是在堆上创建的。 默认值不同。 封装类的出现,是为了更方便的使用一些基本类型不具备的方法,比如valueOf() ...
分类:
编程语言 时间:
2017-12-12 00:15:02
阅读次数:
169
先看代码: 运行结果: 所谓的饿汉模式:不管是否使用到instance这个实例,我们都在创建的过程中就对它进行实例化。 那么,饿汉模式是否会出现线程安全问题呢? 出现线程安全问题需要满足三个条件: 1.多线程的环境下 2.必须有共享资源 3.对资源进行非原子性操作 根据以上代码,我们发现,使用饿汉式 ...
分类:
其他好文 时间:
2017-12-09 13:00:09
阅读次数:
167
C 类型基础 值类型和引用类型 1. 栈(stack)是一种先进后出的数据结构,在内存中,变量会被分配在栈上来进行操作。 2. 堆(heap)是用于为引用类型的实例(对象)分配空间的内存区域,在堆上创建一个对象, 会将对象的地址传给栈上的变量。 值类型 当声明一个值类型的变量的时候的时候,变量本身包 ...
分类:
Web程序 时间:
2017-12-08 19:33:05
阅读次数:
232
类的定义的是引用类型,重视在堆上创建,有的时候类只包含极少的数据,应为管理堆而造成的开销是很大的。这时候更好的做法就是将类型定义成结构。结构是值类型,在栈上存储,能有效的减小内存管理的开销。c#基元类型在Microsoft.NET Framework中对应的类型,string和object类型是类而 ...
第一种,懒汉模式,没考虑线程安全 第二种,经典模式 第三种,饿汉模式 ...
分类:
其他好文 时间:
2017-11-25 13:16:45
阅读次数:
129