jvm、jdk和jre jvm:java virtual machine JAVA虚拟机,是java实现跨平台最核心的部分。 java包装类 java包含了8中基本数据类型,这8种基本数据类型不支持面向对象的编程机制,也不具备“对象”的特性:没有成员变量、方法可以被调用。这8种基本数据类型带来了一定 ...
分类:
编程语言 时间:
2019-10-28 11:08:55
阅读次数:
75
一:Spark的性能优化,主要手段包括:1、使用高性能序列化类库2、优化数据结构3、对多次使用的RDD进行持久化 / Checkpoint4、使用序列化的持久化级别5、Java虚拟机垃圾回收调优6、提高并行度7、广播共享数据8、数据本地化9、reduceByKey和groupByKey的合理使用10 ...
分类:
其他好文 时间:
2019-10-27 22:29:23
阅读次数:
59
运行时数据区域 jdk 1.8之前与之后的内存模型有差异,方法区有变化(https://cloud.tencent.com/developer/article/1470519)。 java的内存数据区域划分: 程序计数器 虚拟机栈 本地方法栈 堆 方法区 程序计数器(Program Counter ...
分类:
编程语言 时间:
2019-10-27 12:54:47
阅读次数:
93
title: 【学习】深入理解JVM之类加载.mddate: 2019-10-20 22:20:06tags: JVM 类加载 Java类的加载,连接,初始化都是在程序运行期间执行的 ## Java 虚拟机与程序的生命周期 1. 执行 System.exit()方法2. 程序正常结束3. 遇到异常或 ...
分类:
其他好文 时间:
2019-10-27 00:59:45
阅读次数:
81
Java 注解(Annotation)又称 Java 标注,是 JDK5.0 引入的一种注释机制。 Java 语言中的类、方法、变量、参数和包等都可以被标注。和 Javadoc 不同,Java 标注可以通过反射获取标注内容。在编译器生成类文件时,标注可以被嵌入到字节码中。Java 虚拟机可以保留标注 ...
分类:
编程语言 时间:
2019-10-26 23:04:11
阅读次数:
108
一、异常的介绍 Throwable 是 Java 中所有错误和异常的超类。Java 虚拟机仅抛出属于此类(或其子类之一)的实例对象,或者是 throw 语句也可以抛出该对象。同样,catch 子句中的参数类型也只能是此类(或其子类之一)。处于编译时检查异常为目的,Throwable 和其部分子类(除 ...
分类:
编程语言 时间:
2019-10-26 01:17:48
阅读次数:
101
Java虚拟机中有许多附加技术用以提升速度,尤其是与加载器操作相关的,被称为“即时”(Just-In-Time,JIT)编译器的技术。这种技术可以把程序全部或部分翻译成本地机器码(这本来是JVM的工作),程序运行速度因此得以提升。当需要装载某个类时,编译器会先找到其.class文件,然后将该类的字节码装入内存。此时,有两种方案可供选择:(1)一种就是让即时编译器编译所有代码。但这种做法有两个缺陷:
分类:
编程语言 时间:
2019-10-24 09:16:01
阅读次数:
99
JVM(Java Virtual Machine,Java虚拟机)是一个虚构出来的计算机,通过在真实的计算机上模拟各种计算机功能。Java虚拟机屏蔽了与具体操作系统平台相关的信息,使得Java编译器生成的字节码文件,可以在多种平台上不加修改地运行。 Java代码编译运行过程:Java源码文件(.ja ...
分类:
其他好文 时间:
2019-10-23 15:22:48
阅读次数:
79
JDK Java Development Kit 用作开发, 包含了JRE,编译器和其他的工具(比如: JavaDoc,Java调试器),可以让开发者开发、编译、执行Java应用程序。 JRE Java 运行时环境,是将要执行 Java 程序的 Java 虚拟机,可以想象成它是一个容器,JVM 是它 ...
分类:
编程语言 时间:
2019-10-23 11:44:03
阅读次数:
81
作为开发工程师,你也许会在日常编程中被 Java 的启动性能和内存耗费所震惊,继而对 Java 语言产生怀疑;或许在使用虚拟机遇见内存溢出等一系列异常时头疼万分,困扰于为什么会出现各种问题。 和语言朝夕相处的开发者们,提及代码的详细运行过程也难免会一时语塞。这都是由于 Java 虚拟机封装得太好,让 ...
分类:
编程语言 时间:
2019-10-22 23:40:04
阅读次数:
107