Java学习笔记——一二章学习总结
第一章 Java平台概论
1.Java三大平台,从J2SE(Java 2 Platform, Standard Edition)、J2EE(Java 2 Platform, Enterprise Edition)、J2ME(Java 2 Platform, Micro Edition)到Java SE,Java EE,Java ME;Java SE包含四部分:JVM(Java虚拟机),JRE(Java运行环境),JDK(Java开发工具)与Java语言。
(1)为了能运行Java撰写好的程序,必须有Java虚拟机(Java Virtual Machine,JVM);
(2)Java语言只是Java SE的一部分,除了语言之外,Java最重要的就是提供庞大且强大标准的API,提供字符串处理、数据输入/输出、网络套件、用户窗口接口等功能。
2.Java不仅仅是程序语言,还是标准规范。
3.学习路径:
(1)深入了解JVM/JRE/JDK。
(2)理解封装、继承、多态。
(3)掌握常用Java SE API架构。
(4)学习容器观念。 就操作层面,容器室执行于JVM之上的Java应用程序,就抽象层面来说,是应用程序沟通、协调相关资源的系统。
(5)研究开放源码项目。
(6)学习设计模式(设计经验)与重构(调整手法)。
(7)熟悉开发工具,代替手动执行指令。
4.JVM、JRE、JDK关系
JDK(Java Development Kit)包含Java程序语言、工具程序(javac,appletviewer,javadoc)、JRE。JRE(Java Runtime Environment)包括了部署技术、Java SE API和JVM。
Java编译时并不直接编译为二进制文件,而是翻译为中介格式的位码(Byte Code),对应.class为后缀的文件。运行时使用Java SE API中的链接库,无需额外在程序中包装链接库。位码文档(扩展名为.class的文档)就是JVM的可执行文件。
(引自:http://www.oracle.com/technetwork/java/javase/tech/index.html)
第二章 从JDK到IDE
2.1从HelloWorld开始
1、可以运行HelloWorld程序,就说明建好了Java开发环境。
2、PATH是高速操作系统javac.exe,java.exe在什么位置,在PATH中设置工具程序的信息,系统才能在PATH中找到要执行的指令。在命令提示符中设置SET PATH="C:\Program Files\Java\jdk1.8.0_101\bin";%PATH%
,关掉命令提示符后下次还要重新设定。可在系统环境变量中添加,会套用至每个用户,用户环境变量只影响个别用户。开启一个命令提示符时,获得的环境变量是系统环境变量在附加用户环境变量。
3、启动JVM指令为java,执行HelloWorld时不需附加.class的后缀,可以通过CLASSPATH来指定可执行的.class文件的路径信息。java -classpath C:\workspace;C:\classes HelloWorld多个路径信息可用;隔开。JVM默认CLASSPATH是当前路径。我在用户环境变量里面增加了相应的CLASSPATH信息后,即可在任意路径下执行。
public void HelloWorld{ public static void main(String[] args){ System.out.println("Hello World!"); } }
2.2管理源码与位码文档
2.2.1编译程序(javac)与SOURCEPATH
在编译src\Main.java时,要用到Console类,需要告诉编译器Console原始码文档放置位置,使用-sourcepath来指定原始码文档,-d来指定位码存放位置,通过javac -sourcepath src -d classes src\HelloWorld.java
来进行编译,可以在classes文件夹下看到生成的Console.java和HelloWorld.java文件。当生成了Console.java文件后,再次编译时可使用javac -sourcepath src -cp classes -d classes src\HelloWorld.java
可以不用再次编译Console.java文件而直接在classes文件夹下找到Console.class位码文件。
2.2.2使用package管理类
在HelloWorld.java中添加package com.sdy;,相应建立文件夹目录放置原始文件,防止相同的文件名冲突。在引用时同样要加上包名com.sdy.util.Console.writeLine("Is it OK?");
编译时生成的位码文件也会建立相应的文件夹存放。
java执行程序时,必须指定完全吻合名称,即java com.sdy.HelloWorld,才可以运行。
2.2.3使用import
即通过在HelloWorld.java加入import com.sdy.util.Console,可以解决以上com.sdy.util.Console.writeLine("Is it OK?"); 引用的问题,而直接简写成Console.writeLine("Is it OK?");即可。同样还可以使用import com.sdy.util.*
如果类位于同一包,彼此使用并不需要import,当编译程序看到一个没有包管理的类名称,会先在同一包中寻找类,如果找到就使用,如果没找到,再试着从import描述进行比对。
2.3使用IDE
使用eclipse或NetBeansIDE来代替手动敲命令进行编译执行,NetBeansIDE下载地址https://netbeans.org/downloads/index.html
体会:
之前都是从IDE开始编写运行程序,从打开书的那一刻感受到不一样的思路,最简单的helloworld程序,有着许许多多的细节问题,简单不是理由,自信不是自负,要一步一个脚印前行!