Java学习第一期

来源:互联网 发布:手机哼歌识曲的软件 编辑:程序博客网 时间:2024/05/01 12:43

第一章

Java是面向对象的(Object-oriented),分布式的(Distributed),安全的(Secure),可移植的(Portable),多线程的(Mutil-Threaded),动态的的(Dynamic)。

Java的构成

Java的构成,是指Java运行环境的组成,从核心到外围包括JIT,JVM,JRE,JDK。


图1-1 Java的组成

JDK

Java DevelopToolKit的缩写,其中有很多用Java编写的工具,如javac.exe,jar.exe等,还包括一个JRE的调试环境。如果安装了JDK,会有两套JRE,一个位于\jre目录下,另外一套位于C:\Program Files\Java目录下,后者比前者少了Sever端的Java虚拟机,可以直接将前者复制过来就能够使用。下图可以看出,


图1-2 安装完JDK后出现的两个文件目录。

JDK的安装路径是C:\ProgramFiles\Java,其中的文件夹jdk1.7.0_21里放的是JDK本身,它里面有一个jre,见图1-3。


图1-3 JDK中的jre

值得注意的是:图1-3中的jre没有Server的虚拟机,而图1-2中的有!如需要,可以将1-2中的文件夹整体复制过来。

JRE

Java RuntimeEnvironment的缩写,是Java运行的基础,它提供了Java运行的API,Java程序必须有JRE才能运行。

JVM

Java VitualMachine的缩写。它是Java程序运行的虚拟机环境,JRE目录下的bin目录有两个目录,即Server和Client,这就是真正的jvm.dll所在。

JIT

Java In Time的缩写,即Java的即时编译器,是JVM的一部分,属于内核部分。

Java虚拟机JVM

Java最突出的特点就是可以在任何操作系统上运行!使用Java虚拟机就是为了实现与操作系统无关,在任何系统中都可以运行的功能。Java语言编译器只需要生成能够在Java虚拟机上运行的目标代码(字节码),这些字节码就可以在安装有Java虚拟机的任何操作系统中不加修改且无差异的运行。

设置环境变量


在用户变量或者系统变量中设置JAVA_HOME,PATH,CLASSPATH三个变量的地址,目的是告诉系统一些路径,以便系统去查询所需要的文件。

PS:JAVA_HOME一般设置在系统变量中,而PATH和CLASSPATH即可设置在用户变量也可以设置在系统变量中,如果计算机就一个用户,那么设置在用户变量中和系统变量中是一样的效果,如果系统有多个用户,而且每一个用户多希望使用这个环境,那么就设定在系统变量中,否则就设置在需要使用JAVA环境的用户变量中。

JAVA_HOME:这个写法是定下来的,不能改动。一般填写JDK的安装路径,如:C:\ProgramFiles\Java\jdk1.7.0_21

这个变量是告诉别的软件,JAVAJDK安装在什么地方,以便调用。



PATH:如果没有,新建一个,有的话则在后面添加:

%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin

这个变量告知了JavaJRE所在地方,bin文件夹是jre的真正所在!


CLASSPATH: 如果没有,新建一个,有的话则在后面添加:

.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar

这个变量告知了JVM,要执行的字节码文件(.class)的路径!


PS:%JAVA_HOME%表示JDK的安装地址:C:\Program Files\Java\jdk1.7.0_21。

需要注意的是CLASSPATH中要有.;,这代表当前目录!例如,在编译文件后:

javac      XX.java

生成了一个.class文件,那么就可以直接用:

java              XX

运行生成的字节码文件。这就方便很多了。当然,一般可以把写好的.java文件放到一个文件夹中,如D:\Java中,再把路径“D:\Java”放入到CLASSPATH路径中,那样的话,JAVA环境就回自动在这个目录中搜索符合的类文件来运行。

(路径如果是加在最后,不要写上“;”,其它位置都需要用“;”彼此隔开)

配置好后,可以用一下方式来查看是否配置成功:

1.打开控制台cmd。

2.一次输入 javac –version    java –version       javac –help

3.若出现下图就代表配置成功了!

 


 

第一个Java程序

package mypackage;import java.util.Date; /** * @author chenkaiC4 * @version V1.0.0 */public class chenkai {   /**    * Hello 前缀    */   public static String hello="Hello";   /**    * n 循环次数    */   public int n;   /**    * @param姓名    */   public void print(Stringname){      int i;      String str;      Date date=new Date();      for(i=1;i<=n;i++){         str=i+"="+chenkai.hello+" "+name+" "+date;         System.out.println(str);      }   }/** * 入口函数 * @param args输入参数 */   public static void main(Stringargs[]){      chenkai a=new chenkai();      a.n=10;      a.print("C4");   }}

Java是用包,即package来对类进行分类管理的!一个package中可以含有多个类,它们不能够同名,但是不同package中的类可以同名。此外,一个Java源程序可以含有多个类,但是一定只归属于一个package。一个Java源程序中一开始要注明自己是那个包的,然后可以定义自己的类,可以定义多个,但是最多只能够注明一个Public类,这个类称为主类,函数入口(main函数)就放在其中。当定义了Public类后,这个源程序文件的名字一定要和这个主类一致,如果主类是class Abc{//…},则这个文件的名字也必须是Abc.java,不能错,否则就无法编译成功。类的定义和使用后面再具体讨论,此处按住不表。

源文件编辑好后,保存为.java文件,然后在调出控制台cmd,输入:

javac     java源程序的路径\文件名 (回车)

系统会在该源文件的文件夹中出现一个名字相同,后缀是.class的文件,该文件就是字节码文件。

java      包名\文件名

这样就可以顺利运行文件了。注意,如果源文件含有包名,一定要加上包名,否则找不到类文件,无法运行。

相同的,执行一个jar包时,用下面语句:

java  –jar  name.jar

 

0 0