static 关键字:(可用于修饰方法、变量) static 特点: static是静态修饰符,一般修饰成员变量。被static修饰的属于全局共享。被static修饰的成员属于类,(又叫类成员)不属于单个这个类的某个对象。 被static关键字修饰的成员可通过类名.的方式调用。而且,被static修 ...
分类:
其他好文 时间:
2019-12-20 13:37:09
阅读次数:
81
学过单例都知道饿汉式和懒汉式单例中饿汉式如果存在静态变量时在引用此变量时将会一并创建对象,这会导致线程的不安全!懒汉式看看:懒汉式采用synchronized来解决线程安全问题,但是synchronized又会导致阻塞性问题,效率会降低所以出现另一种解决方式:使用内部类来创建对象
分类:
编程语言 时间:
2019-12-20 10:21:10
阅读次数:
109
线程(英语:thread)是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。 线程的实现方式: 1、通过继承Thread类实现一个线程 2、通过实现Runnable接口实 ...
分类:
编程语言 时间:
2019-12-19 15:53:43
阅读次数:
102
概念 ReentrantLock,可重入锁。在多线程中,可以通过加锁保证线程安全。 ReentrantLock,是基于AQS实现的。 加锁和解锁 加锁: 解锁 内部类Sync继承AQS,因此可以维护状态变量state,通过acquire()获取state、release()释放state。后文会涉及 ...
分类:
其他好文 时间:
2019-12-19 11:25:28
阅读次数:
84
java中有两种内部类 成员内部类:即写在类中的类 局部内部内:写在方法中的类 静态内部类:使用static修饰的成员内部内,可以直接new 匿名内部类:使用最多的一种形式,懂就行 参考文章 :https://www.cnblogs.com/xiaoxi/p/7338771.html ...
分类:
其他好文 时间:
2019-12-18 16:21:31
阅读次数:
73
RefBase:含有内部类weakRef_Impl(影子对象),影子对象中有两个引用计数变量(强引用计数,弱引用计数) sp,构造的时候,强,弱引用计数均+1,析构的时候都-1 wp,构造的时候,弱引用+1,强引用不变,析构的时候弱引用-1,强引用不变 强引用计数=0:实际对象被delete 弱引用 ...
分类:
移动开发 时间:
2019-12-18 14:25:23
阅读次数:
98
在Java中,允许一个类的定义位于另一个类的内部,前者称为内部类,后者称为外部类。 Inner class一般用在定义它的类或语句块之内,在外部引用它时必须给出完整的名称,Inner的名字不能与包含它的类名相同; Inner class可以使用外部类的私有数据,因为它是外部类成员,同一个类的成员之间 ...
分类:
编程语言 时间:
2019-12-17 20:31:06
阅读次数:
88
内部类分为:静态内部类、非静态内部类成员内部类是外部类成员,可以调用外部类成员。外部类如何使用内部类的成员:创建类对象wai.neiwn=newwai().newnei();局部内部类:内部类可以访问外部类成员单例模式:构造方法私有接口内定义:doublepi=3.14;Java为其8个基本数据类型提供了对应的封装类Java集合就是一种容器,用于存储数量不等的对象,并按照规范实现一些常用的操作和算
分类:
编程语言 时间:
2019-12-17 00:28:38
阅读次数:
100
线程的状态以及状态之间的切换 线程从创建到死亡有七个状态,分别是初始状态,准备运行,运行状态,阻塞状态,睡眠状态(超时等待状态),等待状态,死亡状态,关系如图所示: 线程的创建 实现线程的几种方式: 继承Thread类 实现Runnable接口 匿名内部类的方式 带返回值的线程 定时器 线程池实现 ...
分类:
编程语言 时间:
2019-12-15 22:02:22
阅读次数:
137
this关键字在java是可以说是最常用的关键字了?但是最近在看内部类的时候,突然产生了一个问题,那就是this是指向类的引用还是对象的引用呢? 在看完了this的定义之后,可以明确的知道this表示的对象,而且在本类中使用表示本类的对象,并且不需要通过构造器来生成,直接使用即可。 此外,this还 ...
分类:
编程语言 时间:
2019-12-15 18:40:56
阅读次数:
93