2020-09-12

10.Java语言发展史:

  • Java语言诞生于1995年。
  • 其实在1995年之前SUN公司(太阳微电子公司:该公司目前被Oracle(甲骨文:做数据库的)收购了)
    为了占领智能电子消费产品市场,派James Gosling领导团队开发了一个oak(橡树)语言。
  • 1996年:JDK1.0诞生
    • 什么是JDK?
      Java开发工具包
      做Java开发必须安装的一个工具包,该工具包需要从官网下载。
      目前SUN被Oracle收购了,所以下载需要去Oracle下载。http://www.oracle.com
  • 目前JDK最高版本是:java8/JDK1.8/JDK8
  • Java包括三大块:
    • JavaSE (Java标准版)
    • JavaEE(Java企业版)
    • JavaME(Java微型版)
      其中JavaSE是基础,以后主攻方向是JavaEE方向。

11.Java语言特性【开源,免费,纯面向对象,跨平台】

*简单性:相对而言的,例如Java中不再支持多继承,c++是支持多继承的,多继承比较复杂
c++中有指针,Java中屏蔽了指针的概念。
所以相对来说Java是简单的。
Java语言底层是c++实现的。不是c语言。

*面向对象:Java是纯面向对象的。更符合人的思维模式。更容易理解。

*可移植性(跨平台):什么是可移植性?
Java程序可以做到一次编译,到处运行。
也就是说Java程序可以在Windows操作系统上运行,不做任何修改,
同样的Java程序可以直接放到linux操作系统上运行,这个被称为Java程序的可移植性,或者叫做跨平台。

           Windows操作系统内核和Linux操作系统的内核肯定不同,
       他们这两个操作系统执行指令的方式也是不一样的。

       结论:显然Java程序不能直接和操作系统打交道。因为Java程序只有一份。
       操作系统执行原理不同。

       sun的团队很聪明,他们想了一个办法,,他们让Java程序运行在一台虚拟的计算机当中,
       这个虚拟的计算机叫做Java虚拟机,简称JVM。Java虚拟机再和底层的操作系统打交道。

*多线程
*健壮性:与自动垃圾回收机制有关,自动垃圾回收机制简称GC机制。
Java语言运行过程中产生的垃圾是自动回收的,不需要程序员关心。
*安全性

  1. Java的加载与运行

    *Java程序的运行包括两个非常重要的阶段

    • 编译阶段
    • 运行阶段

    *编译阶段

    • 编译阶段主要的任务是检查Java源程序是否符合Java语法,
      符合Java语法则能够生成正常的字节码文件(xxx.class)
      不符合Java语法规则则无法生成字节码文件

    • 字节码文件中不是纯粹的二进制,这种文件无法在操作系统当中直接执行。

    • 编译阶段的过程:

      • 程序员需要在硬盘的某个位置<位置随意>新建一个.java扩展名的文件,
        该文件被称为Java源文件,源文件当中编写的是Java源代码/源程序。
        而这个源程序是不能随意编写,必须符合Java语法规则<java语法规则是需要记忆的>

      • java程序员需要使用JDK当中自带的Javac.exe命令进行Java程序的编译。

        Javac怎么用呢?在哪儿用呢?

      • 在DOS命令窗口使用。

      • javac的使用规则:
        javac java源文件的路径

      javac是一个Java编译器工具/命令。

    • 一个Java源文件可以编译生成多个.class文件。【以后再说】

    • 字节码文件/class文件是最终要执行的文件,所以说class文件生成
      之后,java源文件删除并不会影响java程序的执行。但是一般Java源程序
      不要删除,因为class文件最终执行效果可能不是我们想要的,那么这个
      时候需要回头再重新修改Java源程序,然后将java源程序重新编译生成
      新的class文件,然后再运行这个class程序,生成新的效果。

    • 编译结束之后,可以class文件拷贝到其他操作系统当中运行。【跨平台】

    *运行阶段【可以在其他操作系统当中,跨平台】

    • JDK安装之后,除了自带一个javac.exe之外,还有另一个工具/命令,叫做java.exe
      java.exe命令主要负责运行阶段。

      • java.exe在哪里用?怎么用呢?
        • 在Dos窗口使用。
    • java.exe怎么用呢?
      java 类名
      例如:
      硬盘上有一个A.class,那么就这样用:java A
      硬盘上有一个B.class,那么就这样用:java B
      硬盘上有一个C.class,那么就这样用:java C
      千万要注意:不要写成这样:java A.class【这种方式是错误的,大家记住就行】

      • 运行阶段的过程是:
    • 打开Dos命令窗口

    • 输入:java A

    • java.exe命令会启动Java虚拟机(JVM),JVM会启动类加载器ClassLoader

    • ClassLoader会去硬盘上搜索A.class文件,找到该文件则将该字节码文件装载到Jvm当中。

    • JVM将A.class字节码文件解释成二进制1010101010这样的数据。

    • 然后操作系统执行二进制和底层硬件平台进行交互。

13.开始第一个Java程序

  • 保证计算机当中已经安装了文本编辑器EditPlus

  • 安装JDK【JDK一般需要从oracle的官网下载】,我们这里讲解的是JDK7

  • JDK,JRE(Java运行时环境 Java Runtime Environment),JVM(Java虚拟机 Java Viture Machine)的关系搞清楚
    JVM<JRE<JDK JDK中自带JRE

  • JDK目录的介绍:
    JDK/bin:该目录下存放了很多命令,例如javac.exe和java.exe
    javac.exe负责编译
    java.exe负责运行

  • 开发HelloWorld.java源程序【照抄,不要问为什么,注意大小写】

  • 将HelloWorld.java源程序通过javac工具进行编译:

    • 首先需要解决的问题是:javac命令是否可用

    • 打开Dos命令窗口,直接输入javac,然后回车,出现以下:
      ‘javac’不是内部或外部命令,也不是可运行的程序
      或批处理文件。

    出现以上问题是因为:windows操作系统无法找到javac命令文件

    • 怎么解决以上javac不可用的问题?
      windows操作系统是如何搜索硬盘上某个命令的呢?
      • 首先会从当前目录下搜索(C:\Windows\System32 System32就是当前目录)
    • 当前目录搜索不到的话,会从环境变量Path指定的路径当中搜索某个命令
    • 如果都搜索不到,则报以上的错误。
      (在Dos命令窗口直接搜javac搜不到,但是搜ipconfig搜的到,因为虽然ipconfig在当前目录下搜索不到
      但是它有指定的环境变量Path路径可以搜索的到)
    • 配置环境变量path(此电脑–>属性–>高级系统设置–>高级–>环境变量–>在系统变量中找到path变量点击并编辑,路径最好复制粘贴上去,不要自己打)
      (环境变量中有Dell的用户变量和系统变量,Dell的用户变量是只属于Dell管理者的路径,其他一些来宾账户
      的则没有,而系统变量是所有账户都可以的)
      (改完环境变量之后一定要将Dos命令窗口关闭,再打开新的窗口才可以)

      • 注意:path环境变量和java语言没有关系,path环境变量是属于windows操作系统的一个知识点。
        path环境变量是专门给windows操作系统指路的。

      • javac要想能随意使用,需要将javac所在的目录配置到环境变量path当中:
        path=xxx;c:\Program Files\Java\jdk1.7.0-80\bin(;是英文输入方式下的;不是中文输入方式,路径之间用;隔开)
        javac -vertion 可以查看javac的版本

    • javac命令怎么用?
      javac java源文件路径
      注意:路径包括相对路径和绝对路径,都可以。
      (绝对路径使用:javac空格+拖动HelloWorld.java文件到Dos命令窗口,然后敲回车,如果没有任何问题,编译之后会重新
      生成一个HelloWorld.class文件,表明已经成功生成。
      这样显示 C:\Users\DELL>javac D:\course\JavaProjects\02-JavaSE\day01\HelloWorld.java
      C:\Users\DELL是任意的)

      (相对路径使用:点击目录上day01,再目录上输入cmd,然后回车
      这样显示:D:\course\JavaProjects\02-JavaSE\day01>
      D:\course\JavaProjects\02-JavaSE\day01>del *class 表明删除class文件
      D:\course\JavaProjects\02-JavaSE\day01>javac HelloWorld.java 表明生成一个HelloWorld.class文件
      D:\course\JavaProjects\02-JavaSE\day01是指从当前day01目录下,是唯一的
      还可以这样:C:\Users\DELL>d:
      D:>cd course
      D:\course>cd JavaProjects
      D:\course\JavaProjects>cd 02-JavaSE 就这样切到D:\course\JavaProjects\02-JavaSE\day01>)

*运行java程序:

- 需要使用java.exe命令

- 首先测试java命令是否可用(dir查看目录中是否有HelloWorld.class)

- 使用方式:
   java 类名
   硬盘上有HelloWorld.class,那么类名就是:HelloWorld
   java HelloWorld
   一定要注意:java命令后面跟的不是文件路径,是一个类的名字。

- 首先你需要先将Dos窗口中的目录切换到HelloWorld.class文件所在目录。

- 然后直接执行:java HelloWorld
(这样显示:D:\course\JavaProjects\02-JavaSE\day01>java HelloWorld 后面就是显示运行的结果 Hello World!)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值