java的入门之旅


> 我正在参与CSDN《新程序员》有奖征文https://marketing.csdn.net/p/52c37904f6e1b69dc392234fff425442

对java怀着一种特别的心情,学习了她,下面简单介绍如何进行java的入门。

1、JAVA软件工程师 通过某种计算机的编程语言完成软件的开发。

2、计算机的俩部分

    *硬件
          由运算器、控制器、存储器、输入设备、输出设备组成
    *软件
          软件包括:应用软件和系统软件

在这里插入图片描述

3、windows常用dos命令:

  1、win+R打开DOS命令窗口   
  2、开始菜单-->运行-->输入cmd回车
  3、cls  清屏
     dos窗口中的复制,右键  标记  选中  右键
     dir  显示当前文件夹下的文件夹及文件
     cd   表示改变目录,切换路径
                           相对路径
			               绝对路径
     cd.. 返回上级路径

			   
     切换盘符
     c: 回车
     d: 回车
    .
	.
	.

> 4、计算机语言的发展史:

  第一代语言:机器语言
      主要是编写二进制代码,直接10101010这样的二进制, 	  以打孔机为代表。

  第二代语言:低级语言
      主要汇编语言为代表。 	  在低级语言中引入一些英语单词。例如变量赋值采用字母。

  第三代语言:高级语言
       几乎和人类的语言完全相同,
 例如:c语言、c++、JAVA...

在这里插入图片描述

**5、JAVA语言发展史

*Java语言诞生于1995年。
*之前为SUN公司所有(太阳微电子公司)该公司目前被Oracle(甲骨文)收购。
*James Gosling 为JAVA之父。
*1996年:JDK1.0诞生
     - 什么是JDK?
      JAVA开发工具包
      需要从官网下载。https://www.oracle.com
*目前JDK最高版本的是:Java8/JDK1.8/jdk8    /jdk16
*JAVA包含三大块:
      - JavaSE(Java标准版)
  - JavaEE(Java企业版)
  - JavaME(Java微型版)
其中JavaSE是基础,以后主攻方向是JavaEE**

java的入门之旅_第1张图片

6、Java语言特性【开源、免费、纯面向对象、跨平台】

*简单性
    java中屏蔽的指针的概念
java中不在支持多继承,c++是支持多继承的,多继承比较复杂。
    java语言底层是c++实现的,不是c语言。
*面向对象
    java是纯面向对象的,更符合人的思维模式。更容易理解。

*可移植性
    - 什么是可移植性?
   Java程序可以做到一次编译,到处运行。
   可以在任何操作系统的运行并且不需要修改。
       或者叫跨平台。

  windows操作系统内核和linux操作系统内核肯定不同,他们这俩个
  操作系统执行指令的方式也是不一样的。
  
  结论:显然java程序不能直接和操作系统打交道。。因为Java程序只有一份。
  操作系统执行原理都不同。
 
  java虚拟机(简称JVM,JVM和底层的操作系统打交道)能完美的解决这一问题。

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

7、Java的加载与执行

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

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

- 编译阶段的过程:

   * 程序员需要在硬盘的某个位置<位置随意>新建一个.java扩展名的文件,
   该文件被称为Java源文件,源文件当中编写的是Java源代码/源程序。
   而这个源程序不是随意编写的,必须符合Java语法规则   
   
   * Java程序员需要使用jdk当中自带的javac.exe命令进行Java程序的编译。
       javac怎么用呢?在哪用呢?
           
	   - javac的使用规则:
	       Javac Java源文件的路径

	    - 在DOS命令窗口中使用。
  
       * javac是一个Java编译器公具/命令。
	 
** class文件被称为字节码文件/class文件是最终要执行的文件,所以说class文件生成之后
   ,Java源文件的删除不会影响Java程序的执行。但是一般Java源程序不要删除,因为class文件的
   最终执行结果可能不是我们想要的,那么这个时候就需要回头再重新修改Java源程序,然后将
   Java源程序重新编译生成新的class文件,然后在运行这个class程序,生成新的效果。

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

    a.class — a被称为类 {a为类名}

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

    • 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会启动类装载器class loader

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

      *JVM将A.class字节码文件解释成二进制数据。

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

      ( JDK包含:【JRE包含:[JVM]】)

8、开始第一个Java程序的开发

   * 安装jdk,在百度就可以找到,不推荐官网,忒麻烦
   
   * JDK目录的介绍:
     JDK/bin:该目录下存放了很多命令,例如javac.exe和java.exe
     javac.exe负责编译
     java.exe负责运行

* 开发HelloWorld.java源程序

     * 将HelloWorld.java源程序通过javac工具进行编译:
     - 首先解决的问题是javac命令是否可用
     - 打开DOS命令窗口,直接输入javac,然后回车,出现以下:
        'javac' 不是内部或外部命令,也不是可运行的程序
         或批处理文件。
   
       出现以上问题是因为:windows操作系统无法找到javac命令

     - 怎么解决以上javac不可用的问题?
       windows操作系统是如何搜索硬盘上某个命令呢?
              * 首先会从当前目录下寻找
	  * 当前目录搜索不到的话,会从环境变量path指定的路径中搜索某个命令
	  * 如果都搜索不到,则报以上错误。


     - 配置环境变量path 【在高级系统设置里面】
     * 注意:path环境变量和Java语言没有关系,path环境变量是属于windows操作系统的
    path环境变量是专门给Windows操作系统指路的。

    *javac要想能够随意使用,需要将javac所在的目录配置到环境变量path中。
  • 注意:当在命令窗口中执行java hello ,那么要求Hello.class当中必须有主方法。
    没有主方法会出现运行阶段的错误:
    C:\Users\Administrator\Desktop\课堂i笔记\day02>java k
    错误: 在类 k 中找不到主方法, 请将主方法定义为:
    public static void main(String[] args)

9、总结第一章需要掌握的内容:
* 理解java的加载与运行
* 能够自己搭建java的开发环境
* 能够独立编写HelloWorld程序,编译并运行
* 掌握环境变量path的原理及如何配置
* 掌握环境变量classpath的原理及如何配置
* 掌握java中的注释
* public class 和 class的区别

在这里插入图片描述

你可能感兴趣的:(java,jvm,java,jvm,编程语言)