您的位置:首页 > 职场人生

黑马程序员----JAVA概述----与JAVA的第一次见面

2015-04-17 18:30 295 查看
------<ahref="http://www.itheima.com" target="blank">Java培训、Android培训、iOS培训、.Net培训</a>、期待与您交流! -------

JAVA概述:

 

是SUN公司N1995年推出的一门高级编程语言。SUN不是太阳公司而是(Stanford University Network,斯坦福大学网络公司)的简称。后被oracle收购。

是一种面向对象的编程语言。

 

随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。

是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。

  

JRE.JDK是什么:

 

 JRE:JAVA运行环境,包括Java虚拟机(JVM Java Virtual Machine)和Java程序所需的核心类库等,如果想要运行一个开发好的Java程序,计算机中只需要安装JRE即可。

 

JDK:JAVA开发工具包,JDK是提供给Java开发人员使用的,其中包含了java的开发工具,也包括了JRE。

  

所以安装了JDK,就不用在单独安装JRE了。

JDK ,JRE ,JVM关系示意图:

  


配置ClassPath:

用鼠标右击“我的电脑”,选择“属性”->“高级”->“环境变量”->“系统变量”->“新建”。

classpath=D:\jdk1.8.0_40\jre\lib

临时配置方式:通过dos命令中set命令完成

 

set :用于查看本机的所有环境变量的信息。

 

set  变量名 :查看具体一个环境变量的值。

 

set  变量名=:清空一个环境变量的值。

 

set  变量名=具体值 :给指定变量定义具体值。

 

配置path:

新创建一个环境变量 JAVA_HOME 记录住jdk的目录。

如JAVA_HOME=D:\jdk1.8.0_40

在path中通过%%动态的获取JAVA_HOME的值即可。

  

path=%JAVA_HOME%\bin;%原来就有的路径不要改%

 

%JAVA_HOME%:动态获取名称为JAVA_HOME环境变量的值。

 

那么为什么要配置path和classpath呢?

 配置PATH是为了操作更方便。配置path后Widnows应用程序可以在dos命令下任意目录调用,否则某些系统程序不能直接起动。

 如配置好path环境变量后,javac.exe和java.exe在dos命令行中任意目录都可以使用。操作省事多了。

classpath是专门给类文件配置路径。当想运行的class文件不在当前目录下时,需要配置class路径。

JVM优先查找classpath路径下的.class文件。

 

程序编写执行过程:

  

1、将Java代码编写到扩展名为.java的文件中。

 

2、通过javac命令对该java文件进行编译。

 

3、通过java命令对生成的class文件进行运行。

 

 

lib目录下放置着jar包。程序中的import语句找的就是这些文件!

例如:import javax.servlet.RequestDispatcher;

    问题在于,在cmd模式下编译,系统会提示:CheckAccount.java:5:软件包
javax.servlet不存在!

    在安装jdk之后,仔细观察下安装路径下的文件夹,其中共计两处包含jre目录!共有三处lib目录!

包含javax.servlet的jar包就应该被安置在其中的某一处。首先在tomcat的安装目录下,

找到servlet-api.jar(位于D:\Program Files\Apache SoftwareFoundation\Tomcat 6.0\lib\servlet-api.jar)。

这个包用winrar解压之后看到内部结构为:

        javax\servlet\http


    
同import语句的结构一致!

    我的硬盘里,lib文件夹的位置如下:

        D:\ProgramFiles\Java\jdk1.6.0_02\jre\lib

        D:\ProgramFiles\Java\jre1.6.0_02\lib

        D:\ProgramFiles\Java\jdk1.6.0_02\lib

    分别为jdk下的lib;jre下的lib;jdk下的jre下的lib。

    经过验证,把servlet-api.jar包拷贝进入jdk下的jre下的lib下的ext目录后,import语句顺利通过编译!

即:C:\Program Files\Java\jdk1.5.0_08\jre\lib\ext相关的,其他从外部导入的jar包,都放在这个目录下。

例如:在工程中导入mysql驱动jar包“mysql-connector-java-3.0.17-ga-bin.jar”,

其本质是拷贝了该jar包到ext目录下。其他情况,再添加oracle驱动jar包也类似处理。

再来解释下,为什么会有两处jre目录?三个lib目录分别什么作用?



    
安装JDK后,Java目录下有jdk和jre两个文件夹,但jdk下还有一个jre文件夹,

而且这个jre比前面那个jre在bin目录下多了个server文件夹!

    普通用户装jre即可。开发人员需要安装jdk,其中包括jre。所以jdk目录下包括jre目录。两个jre大体相同,有细微的差别。

    两套 jre
,是针对不同的工作职责!不同的jre负责各自范围的内容。

    当用户只需要执行 java的程序时,那么C:\ProgramFiles\Java\jre1.5.0_08的
jre就 ok


    当用户是 java程序员,则需要 java开发环境。编译时,系统就会优先去找C:\ProgramFiles\Java\jdk1.5.0_08\bin

下的“ java
、 javac”这些命令所在目录或者他们的父目录的jre。即开发环境下运行的是jdk下的jre


再说三个lib目录:



    
JDK下的lib包括java开发环境的jar包,是给JDK用的,例如JDK下有一些工具,可能要用该目录中的文件。例如,编译器等。

    JRE下的lib只是运行java程序的jar包,是为JVM运行时候用的。包括所有的标准类库,和扩展类。

    JDK下的JRE下的lib是开发环境中,运行时需要的jar包。最典型的就是导入的外部驱动jar包。

     因为编译时,系统找的是jdk下的jre。而不是最外层的jre。 

 

 

JDK下的jre 是工作的时候编译执行需要的运行环境

  而单独的JRE是外部直接拿一个java程序(*.jar) 运行用到的运行环境


 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息