day2 Java语言的特性
1.1、相对C语言较简单
1.2、在Java语言当中真正操作内存的是:JVM【Java虚拟机】
所有的Java程序都是运行在Java虚拟机当中的。
而Java虚拟机执行过程中再去操作内存 。
C或者是C++来说程序员都是可以直接通过指针操作内存,但要求程序员技术精湛。
优点:不容易导致内存泄漏
缺点:效率问题,包括驾驭感比较差。
安装JDK后JVM就安装好了。
内存是什么?
对于计算机来书:最主要的几个部件是什么?
CPU:负责发送并执行指令。负责计算的。
内存:程序运行过程当中的临时数据存储空间。
断电之后或者关机之后内存中的数据就消失了。
硬盘:持久化设备,硬盘上的数据不会因断电而丢失。
主板:相当于人类的躯干,是一个载体。
计算机各种部件都放在主板上面的
...
1.3、Java是堪称完全面向对象的。
面向对象更容易让人理解,人类通常是以面向对象的方式认知世界大的。
采用面向对象的方式可以让复杂的问题简单化。
1.4、Java的健壮性
主要是Java中有一种机制
自动垃圾回收处理机制【GC机制】
C++或者C语言使用不当时很容易导致内存泄漏。
JVM负责调度GC机制。程序员不需要干涉。
缺点:内存无法得到及时的处理。
Java完全支持多线程并发。
1.5、可移植性,跨平台:
Java语言只要编写一次,可以到到到处运行。
一次编写,到处运行。
JVM虚拟机机制可以实现Java程序跨平台运行
但是同时比较麻烦。运行Java程序需要安装JVM
操作系统和虚拟机不一样,但是Java程序是一样的,屏蔽了系统之间的
差异性。
Java语言可以编写病毒,但是很难让用户中毒,
中毒的一般都是Java程序员。
1.6、JD、JRE、JVM三者之间的关系、
JDK:Java开发工具箱
JRE:Java运行环境
JVM:Java虚拟机
JDK包括JRE,JRE包括JVM
可以独立安装
1.6对Java的加载与执行的理解
Java程序从编写到执行的历程是
Java程序员直接编写的普通文本必须经过一个编译,把它变成字节码
字节码文件:.class结尾的文件
假设A.cass那么A就叫类名,类装载在JVM虚拟机中
编译阶段和运行阶段可以在不同的操作系统上完成。
Java源码编译之后,把源代码删除可以执行程序的执行,参与程序执行的是字节码,
但是不要删除源代码,因为当你测试之后你觉得执行不如你所意可以修改源代码,然后再重新编译一下。
同时也可以反编译,把字节码编译成源代码
放源代码的文件扩展名必须是:xxx.Java
并且编译生成的字节码文件必须是:.class
.java:源代码文件
.class:字节码文件,编译的源代码文件
一个Java文件是可以编译生成多个.class文件的。
最终运行的是类文件
字节码文件不是二进制文件。
如果是二进制的话,就不需要JVM了,计算机是可以识别二进制的