疯狂Java讲义读书笔记01
哇,最近肺炎盛行,还是读书使人快乐啊。
第一章就是简单介绍了一下Java语言概述和开发环境
Java已经是市场很大的一门开发语言了,人类史上从来从来没有一门语言可以吸引这么多程序员,也没有一门编程语言能衍生出如此多的开源框架。
95年sun公司发布了Java语言,98年发布了jdk1.2,2011年发布了java7,2014年发布了Java8
Java程序的运行机制,Java语言是一种特殊的高级语言,既有解释型语言的特征,也具有编译型语言的特征,因为Java程序需要先编译后解释。
Java语言比较特殊,由于Java语言编写的程序需要经过编译步骤,但这个步骤并不会生成特定平台的机器码,而是生成一种与平台无关的字节码文件。这种字节码文件必须使用Java解释器来解释执行。Java虚拟机是可运行Java字节码文件的虚拟计算机。编译器只需要面向虚拟机,生成虚拟机能够理解的代码,然后由虚拟机来解释执行。在一些虚拟机的实现中,还会将虚拟机代码转换成特定系统的机器码执行,从而提高执行效率。
因为相同的字节码程序需要在不同的平台上运行,这几乎是不可能的,只有通过中间的转换器才可以实现,jvm就是这个转换器。
Oracle公司制定的Java虚拟机规范在技术上规定了jvm的统一标准。
Java程序是一种纯粹面向对象的程序设计语言,因此Java程序必须以类class的形式存在,类class是Java程序的最小程序单位。Java程序不允许可执行语句、方法等独立存在,所有的程序都必须放在类里面。
java解释器规定:如果某个类能够被解释器直接解释执行,则这个类里面必须包含main方法。
对于不包含main方法的类,也是有用的类,对于一个大型Java程序而言往往只需要一个入口,也就是只有一个类包含main方法,其他类都是用于被main方法直接或间接调用的。
Java程序源文件的命名不是随意的,Java文件的命名必须满足如下规则。
Java程序源文件的后缀必须是.java,不能是其他文件后缀名。
Java程序源文件的主文件名是可以任意的。但有一种情况例外:如果Java程序源代码定义了public类,该源文件的主文件名必须与该public类名一样。
一个Java源文件可以包含多个类定义但是只能有一个public类定义。
垃圾回收机制
传统的C/Cpp等编程语言,需要程序员负责回收已经分配的内存。显示进行回收也是一件比较困难的事情,因为程序员一般水平不高,不知道何时释放比较好,如果分配出去的内存得不到及时回收,就会引起系统运行速度下降,甚至导致程序瘫痪,这种现象称之为内存泄漏。
在Java中,当没有引用变量指向原先分配给某个对象的内存时,该内存便成为垃圾。jvm的一个超级线程会自动释放该内存区。

浙公网安备 33010602011771号