Python3 运算符 算术运算符 比较(关系)运算符 赋值运算符 逻辑运算符 位运算符 成员运算符 身份运算符 运算符优先级 1.Python算术运算符 以下假设变量a为10,变量b为21 2.Python比较运算符 以下假设变量a为10,变量b为20: 3.Python赋值运算符 4.Pytho ...
分类:
编程语言 时间:
2018-12-26 20:18:03
阅读次数:
220
GC:GarbageCollection java中的一个方法运行时候,最起码是两个线程以上,一个是用户线程,也就是我们代码逻辑所在的线程。还有一个就是守护线程,例如常见的GC线程, 守护线程在没有非守护线程的情况下,会自动销毁, 垃圾对象:内存中不再被使用的对象 垃圾回收:JVM自动释放垃圾对象所 ...
分类:
编程语言 时间:
2018-12-25 10:15:19
阅读次数:
194
常说的单例有懒汉跟饿汉两种写法。饿汉由于类加载的时候就创建了对象,因此不存在并发拿到不同对象的问题,但会由于开始就加载了对象,可能会造成一些启动缓慢等性能问题;而懒汉虽然避免了这个问题,但普通的写法会在高并发环境下创建多个对象,单纯加synchronize又会明显降低并发效率,较好的两种写法是静态内 ...
分类:
其他好文 时间:
2018-12-13 17:04:07
阅读次数:
210
Java虚拟机运行时数据区在JDK1.8之前,JVM运行时数据区分为堆、虚拟机栈、本地方法栈、方法区、程序计数器。如下图所示:虚拟机栈:线程私有,随线程创建而创建。栈里面是一个一个“栈帧”,每个栈帧对应一次方法调用。栈帧中存放了局部变量表(基本数据类型变量和对象引用)、操作数栈、方法出口等信息。当栈调用深度大于JVM所允许的范围,会抛出StackOverflowError的错误。本地方法栈:线程私
分类:
编程语言 时间:
2018-12-06 20:52:34
阅读次数:
207
Java命令学习系列(三)——Jmap 2015-05-16 分类:Java 阅读(17065) 评论(9) 阿里大牛珍藏架构资料,点击链接免费获取 Jmap jmap是JDK自带的工具软件,主要用于打印指定Java进程(或核心文件、远程调试服务器)的共享对象内存映射或堆内存细节。可以使用jmap生 ...
分类:
其他好文 时间:
2018-12-01 15:27:19
阅读次数:
236
一、java内存模型的相关概念:原子性、可见性与有序性 原子性: 原子是世界上的最小单位,具有不可分割性。比如 a=0;(a非long和double类型) 这个操作是不可分割的,那么我们说这个操作时原子操作。再比如:a++; 这个操作实际是a = a + 1;是可分割的,所以他不是一个原子操作。非原 ...
分类:
其他好文 时间:
2018-11-29 20:11:02
阅读次数:
156
Jmap jmap是JDK自带的工具软件,主要用于打印指定Java进程(或核心文件、远程调试服务器)的共享对象内存映射或堆内存细节。可以使用jmap生成Heap Dump。在Java命令学习系列(零)——常见命令及Java Dump介绍和Java命令学习系列(二)——Jstack中分别有关于Java ...
分类:
编程语言 时间:
2018-11-10 22:44:05
阅读次数:
246
在python中可以用id()函数获取对象的内存地址。 用法: object -- 对象 ...
分类:
编程语言 时间:
2018-11-03 14:00:09
阅读次数:
239
Jvm的垃圾回收机制到底会不会回收掉长时间不用的单例模式对象,这的确是一个比较有争议性的问题。将这一部分内容单独成篇的目的也是为了与广大博友广泛的讨论一下这个问题。为了能让更多的人看到这篇文章,请各位博友看完文章之后,点一下“顶”,让本篇文章排名尽量的靠前。笔者在此谢过。 讨论命题:当一个单例的对象 ...
分类:
其他好文 时间:
2018-10-30 00:18:53
阅读次数:
184
[toc] Java容器 hashmap实现原理 存储结构是链表数组,数组的每个元素都是链表(为了解决冲突,还可以将链表变成红黑树进一步降低复杂度)。 put方法:根据Key类的hashCode函数得到散列码( 这就要求Key类实现hashCode函数 ),根据散列码找到数组里对应的位置(散列码到下 ...
分类:
编程语言 时间:
2018-10-14 21:58:22
阅读次数:
176