经过多少个日夜的思考,才决定从原先的.NET转向JAVA。从这篇文章开始,就是对java的学习的总结,希望经过一年的自学,在明年的这个时候能找到个JAVA开发的工作。
一 为什么想转JAVA
-
当前是互联网时代而在中国JAVA已经成为主流。
-
-
- 虽然现在有很多火的语言,例如:Python , Go ,Unity 3D,C++ 等开发语言。但是由于博主本来是做WEB开发,所以更倾向于JAVA,毕竟学起来也更容易。
-
二 JAVA的优势
-
夸平台/可移植性 这是JAVA的核心优势。JAVA在设计的时候就很注重可移植性。比如:JAVA的int类型永远都是32位,而C++ 会因为系统的不同变为 16或32 位
-
安全性 在安全性方面投入了很大的精力,使得JAVA可以很快的构建防病毒,防篡改的系统
-
简单性 因语法基于C,学习起来就不太费力了。
-
分布式 JAVA是为了Internet分布式环境创立的,因为他可以处理TCP/IP协议。JAVA支持远程方法调用(RMI,Remote Method Invocation)
三 JAVA的运行机制和JDK,JRE,JVM 三者的区别
运行过程: 源文件(java) *-> java编译器 -> 字节码文件(.class) *-> JRE(类装载器 -> 字节码校验器 -> 解释器) -> 系统
区 别:
* JVM(Java Virtual Machine) Java虚拟机,用于执行bytecode字节码的"虚拟计算机"。他也定义了指令集、寄存器集、结构栈、垃圾收集堆、内存区域。
Java负责将Java字节码解释运行,边解释,边运行,这样速度就会受到一定影响。
不同的系统有不同的JVM。Java虚拟机机制屏蔽了底层运行平台的差别,实现了"一次编译,随处运行"。
* JRE(Java Runtime Environment) 包含了虚拟机、函数库、运行Java程序所必须的文件
* JDK(Java Development Kit) 包含JRE,以及增加了编译器和调试器等便于开发的必要文件。