摘要:
共谋(勾结)行为的寡头垄断:各寡头企业相互勾结起来形成一个像垄断企业那样的整体,并像垄断企业那样行动,由此各企业就可以联合获取最大利润;在一个行业中企业相互间有着明示或者暗示的不再竞争的协议。 例如:卡特尔(光明正大的合作)
阅读全文
posted @ 2020-01-16 23:33
徐知语的笔记
阅读(4093)
推荐(0)
编辑
摘要:
数据结构(Data structure):是计算机组织数据和存储数据的方式,是指一组相互之间存在一种或多种特定关系的数据的组织方式和它们在计算机内的存储方式,以及定义在该组数据上的一组操作。
阅读全文
posted @ 2020-01-14 20:44
徐知语的笔记
阅读(879)
推荐(0)
编辑
摘要:
栈中的数据都是以栈帧(Stack Frame)的格式存在,栈帧是一个内存区块,是一个数据集,是一个有关方法( Method )和运行期数据的数据集,当一个方法A被调用时就产生了一个栈帧 Fl ,并被压入到栈中, A方法又调用了B方法,于是产生栈帧 F2 也被压入栈,B方法又调用了C方法,于是产生栈帧 F3 也被压入栈,执行完毕后,先弹出 F3 栈帧,再弹出 F2 栈帧,再弹出 Fl 栈帧 以此类推, 遵循“先进后出” / “后进先出”原则。每个方法执行的同时都会创建一个栈帧,用于存储局部变量表、操作数、动态链接、方法出口等信息,每一个方法从调用直至执行完毕的过,就对应着一个栈帧在虚拟机中入栈到出栈的过程。栈的大小和具体JVM的实现有关,通常在 256K~1024K 之间, 1M 左右。
阅读全文
posted @ 2020-01-14 00:42
徐知语的笔记
阅读(909)
推荐(2)
编辑
摘要:
其他收集器的工作范围是整个新生代或者老年代、G1收集器的工作范围是整个Java堆。在使用G1收集器时,它将整个Java堆划分为多个大小相等的独立区域(Region)。虽然也保留了新生代、老年代的概念,但新生代和老年代不再是相互隔离的,他们都是一部分Region(不需要连续)的集合。
阅读全文
posted @ 2020-01-12 14:02
徐知语的笔记
阅读(1320)
推荐(0)
编辑
摘要:
该算法是标记清除和标记整理的结合,标记-清除会产生碎片,标记-整理每次都进行整理效率不高;标记-清楚-整理 是如果老年代内存中没有一块连续续的空间可以存放将要进入对象,就进行整理;如果内存中的空间可以存放将要进入的对象,就进行标记-清除,这样就节省了整理的步骤可以提高效率。总结一句话:不是所有的时候都需要整理的,因为整理也付出代价。主要应用于老年代
阅读全文
posted @ 2020-01-12 10:29
徐知语的笔记
阅读(4759)
推荐(3)
编辑
摘要:
eden space剩余空间不足分配,且需要分配对象内存不小于eden space总空间的一半,直接分配到老年代,不触发Minor GC。适合-XX:+UseParallelGC、-XX:+UseParallelOldGC,即适合Parallel Scavenge。
阅读全文
posted @ 2020-01-11 22:22
徐知语的笔记
阅读(757)
推荐(0)
编辑
摘要:
LineNumberTable 属性表存放方法的行号信息 ;属于调试信息,不是运行时必需的。在使用javac编译器编译Java程序时,默认会在class文件中生成这些信息。可以使用javac提供的-g:none选项来关闭该信息的生成
阅读全文
posted @ 2020-01-07 00:29
徐知语的笔记
阅读(523)
推荐(0)
编辑
摘要:
Access Flags 占2个字节,所以该字节码文件的访问标志是00 21,0x0021在 Access Flags 中是0x0020和0x0001的并集,表示 ACC PUBLIC与 ACC SUPER合并的结果。说明该类的声明修饰是public并且继承Object
阅读全文
posted @ 2020-01-05 20:27
徐知语的笔记
阅读(928)
推荐(0)
编辑
摘要:
常量池(也称常量表):主版本号之后就是常量池的开始位置;java类所对应的常量池主要由常量池数量和常量池数组两部分组成,常量池数量是主版本号之后的两个字节;常量池数组在常量池数量之后,常量池数组中不同元素的类型,结构是不同的,所以该数组长度是不同的,但是数组中的每一种元素的第一个字节是标记位是一个u1类型,JVM在解析常量池时会根据这u1类型来获取元素的具体类型。
阅读全文
posted @ 2020-01-05 17:25
徐知语的笔记
阅读(1311)
推荐(1)
编辑
摘要:
魔数之后的四个字节是版本信息,前两个字节(00 00)是次版本号(minor version: 0),后两个字节(00 34)是主版本号(major version: 52),34是十六进制转换十进制为52;52对应的就是JDK1.8;所以该class文件的版本号=1.8.0;用过java -version 可以验证。由于JVM是向下兼容,所以如何你的字节码文件版本号,小于等于当前JVM的版本,都是可以在当前JVM中运行的。
阅读全文
posted @ 2020-01-05 16:04
徐知语的笔记
阅读(501)
推荐(0)
编辑