一.经验教训
在刚刚接触编程语言时,面对一行行的代码,我感到一阵恐慌,心想:编程语言一定很难,我可能学不会。于是,我就在这种暗示下放纵自己,给自己找学不会听不懂的理由,这也就是为什么至今我还是一个菜鸟的原因了。
但不久后就有一个更大的恐慌来了,那就是期末考试,面对各种没做完的习题,看不懂的代码,我感到害怕,从小到大还没有这样为一门课头疼过。于是我开始啃课本,研究代码,经过一段时间的努力学习,我才勉强及格。
经过这段曲折的学习历程,我也积累了一些使学习变简单的方法,在此分享给大家:
1.要想理解课本上晦涩难懂的概念,可以结合实例代码学习,不仅学习到了概念,还学习了代码。
2.要想提升编程能力,那就一定要多打代码,多练题。
二.编译型和解释型语言
1.编译型语言在执行之前需要有一个专门的编译过程,通过编译系统,将高级语言翻译成机器语言,只需要翻译一次,就可以多次执行了。
2.解释型语言不需要编译,只有在执行时,才进行逐行翻译,每执行一次便要翻译一次,效率较低。
三.Java语言的特点
1.简单
Java语言简单而高效,基本Java系统(解释器和编译器)所占空间不到250KB。
2.面向对象
Java语言是纯面向对象的语言。(可复用,可扩展,可维护)
3.平台无关性与可移植性
Java即是编译型又是解释型的语言,编译成的字节码文件由Java虚拟机在不同操作系统上解释执行;
Java数据类型在任何机器上都是一致的,它不支持特定于具体硬件环境的数据类型,同一数据类型在所有操作系统中占据相同的空间大小。
4.稳定性和安全性
Java摒弃了C++中的不安全因素——指针数据类型,避免了恶意的使用者利用指针去改变不属于自己程序的内存空间。
Java的运行环境还提供字节码校验器,运行时内存布局和类装载器,文件访问限制等安全措施,保证字节码文件加载的安全和访问系统资源的安全。
5.多线程并且是动态的
多线程使应用程序可以同时进行不同的操作和处理不同的事件,互不干涉,便于实现网络上的实时交互操作;
Java在执行过程中,可以动态加载各种类库,适合于网络运行,利于软件开发。
6.高性能
Java字节码转换成机器码非常简便和高效。
7.分布式
数据分布是指数据可以分散存放于网络上的不同主机中,以解决海量数据的存储问题;
操作分布则是指把计算分散到不同的主机上进行处理。
四.Java跨平台原理
将源程序编译成字节码文件——扩展名为.class。这个二进制代码文件与具体操作系统的机器指令无关,其运行必须借助解释执行系统动态翻译成所在操作系统的机器码(由运行环境当中的Java虚拟机完成解释执行工作)。因此只要对程序进行一次编译,就可在不同的操作系统上运行。
五.Java编译运行环境
1. JDK
即(Java Development Kit)java开发工具包
jdk是提供给开发人员使用的,其中包含了java的开发工具,开发工具包括:
编译工具(javac.exe)
打包工具(jar.exe)等。
其中包含JRE,所以安装了JDK就不用单独安装JRE了。
2.JRE
即(Java Runtime Environment)Java运行环境
JRE包括Java虚拟机和Java程序所需的核心类库,电脑上安装了JRE,就能运行一个开发好的Java程序。
3.JVM
即(Java Virtual Machine)Java虚拟机,它是一个平台软件,负责将字节码解释成机器码并提交操作系统执行。