JAVA虚拟机系列(一) 类的加载目录1 类的初始化过程2 详解初始化时的各个阶段一、类初始化的过程先来看一个CLASS文件在整体生命周期里会遇到的阶段:xxxx.class --->加载---->连接--->初始化---> 使用--->卸载。我们将会在本章讨论一下xxxx.class--->加载-...
分类:
其他好文 时间:
2014-09-09 11:56:38
阅读次数:
155
冯诺依曼体系结构JAVA核心优势:跨平台---通过JVM(java虚拟机)来实现JVM:Java虚拟机的一种规范标示符:只能以下划线、美元符号($)、字母、数字组成,不能以数字开头float:(占用4个字节的储存空间)浮点数并不能精确地表示所有的小数,存在舍入误差double占用8个字节的存储空间c...
分类:
编程语言 时间:
2014-09-09 11:41:38
阅读次数:
169
语法糖(Syntactic Sugar),也叫糖衣语法,是英国计算机科学家彼得·约翰·兰达(Peter J. Landin)发明的一个术语。指的是,在计算机语言中添加某种语法,这种语法能使程序员更方便的使用语言开发程序,同时增强程序代码的可读性,避免出错的机会;但是这种语法对语言的功能并没有影响。
Java中的泛型,变长参数,自动拆箱/装箱,条件编译等都是,下面做简单的介绍和分析。...
分类:
编程语言 时间:
2014-09-05 23:47:32
阅读次数:
293
最近几天在看java的视频,感觉很多东西java语法上很像c#,但是还是有很多内容惊到我:
1,java虚拟机
用过VMWar或者VirtualBox的童鞋都对“虚拟机”这个词有个大致的了解,虚拟机提供了个虚拟的平台,让我们可以模拟一些脱离硬件的环境。java里的虚拟机起到了一个类似以前学过的ODBC驱动程序的作用,它屏蔽了底层的差异,让操作...
分类:
编程语言 时间:
2014-09-04 22:20:00
阅读次数:
214
最近装了centos7.0 准备用来搭建web服务器。遇到一个问题折腾了很久:在tomcat日志文件中的中文全部为?号,并不是因为linux的编码问题引起的,而是因为启动tomcat的时候需要设置java虚拟机的编码。于是在daemon.sh中加入以下一句解决。JAVA_OPTS="$JAVA_OP...
分类:
其他好文 时间:
2014-09-04 22:15:40
阅读次数:
279
从 OpenJDK 源代码的角度,阐述了虚拟机内部是如何创建,表示一个 Java 类的,静态变量存储在哪里,如何初始化,虚拟机如何访问到这些静态变量。并给出实验佐证。...
分类:
编程语言 时间:
2014-09-04 19:10:50
阅读次数:
311
学到jvm一头雾水,不知道是干啥用的。后来度娘了一下,有点了解了,大概意思就是说用java编写的源代码,要经过jdk这个工具进行编辑,编译成java虚拟机可以识别的语言,才可以运行。初步了解是这么个意思。jvm是java程序运行的环境,有自己运行的生命周期想要了解jvm和内存溢出有什么关系,先了解一...
分类:
其他好文 时间:
2014-09-04 16:37:39
阅读次数:
174
static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念。
被static修饰的成员变量和成员方法独立于该类的任何对象。也就是说,它不依赖类特定的实例,被类的所有实例共享。
只要这个类被加载,Java虚拟机就能根据类名在运行时数据区的方法区内定找到他们。因此,static对象可以在它的任何对象创建之前...
分类:
编程语言 时间:
2014-09-03 13:11:36
阅读次数:
213
在我们常用的Jstack, Jmap 用于分析java虚拟机的状态的工具,通过起另一个虚拟机通过运行sun.tools包下的java文件,去跟踪另一个虚拟机的状态。 如果让你设计一个跟踪另一个进程的方法,你也通常会考虑这几种常用...
分类:
其他好文 时间:
2014-09-03 11:28:17
阅读次数:
414