002 01 Android 零基础入门 01 Java基础语法 01 Java初识 02 Java简介

学习Java的基础语法

Java是一门编程语言,学习的逻辑其实和现实世界的语言是一样的,需要了解它的语法结构

比如学习英语,我们需要学习英语的单词句型

学习完以后,我们就可以以英语的方式和懂英语的人进行交流、沟通与对话









因为你们的沟通及交流都是以英语为基础,所以大家都能够接受

那么对于编程语言其实也是一样的,这时候,其实我们是需要和计算机进行交互

我们写出的东西(即 程序)不是另外一个人要认识,而是计算机要认识

这时,我们就要学习计算机能够认识的语法结构。那么,这部分内容就是用来这类问题的

学习正式的语法结构之前,我们先对Java有一个整体的了解

进入Java初识

Java初识

Java初识这部分的主要内容

  • Java简介:介绍Java的前世今生
  • 开发第一个Java程序,程序较为简单,为了掌握Java开发的流程
    • 开发过程以命令行进行
  • 使用开发工具(IDE)——Eclipse进行Java开发
    • 使用Eclipse进行Java程序开发的主要步骤

Java简介

对Java的简单了解

  • Java是面向对象的语言
  • 1995年由sun公司发布
    • Java的语言命名过程

  • 2010年sun公司被Oracle公司收购

Java中的重要概念——JVM

  • JVM Java虚拟机
  • JVM Java实现跨平台的关键

一般的高级语言,要实现跨平台(即平台无关性),即要在不同的平台运行,什么平台呢?即不同的操作系统,比如windows、Linux、Mac。那这些编程语言至少要编译成不同的目标代码。而Java有了虚拟机之后,在不同的平台运行的时候,是不需要进行重新编译的。

Java程序的执行流程
  • Java程序的执行流程主要分为2个主要的步骤:

    • 首先,会有一个名称为“xxx.java”的源文件;
    • 这个源文件会通过编译器进行编译;
    • 编译后,生成“.class”作为后缀的字节码文件;
    • 这个字节码文件会交由解释器进行解释执行;

经过以上步骤,我们就能看到我们的程序了

解释执行的过程由谁来完成呢?就是通过Java虚拟机——JVM来完成的。

Java虚拟机解释执行编译过程中生成的字节码文件,把字节码文件解释成具体平台(操作系统)上的机器指令执行。

因为计算机只能识别二进制的01指令,所以把字节码文件解释成具体平台(操作系统)上的机器指令执行以后,Java就能实现”一次编译、到处运行“了。

Java中的重要概念——JDK

JDK:Java语言的软件开发工具包

在开发阶段,Java程序的编译和执行全靠JDK来完成。

JDK中有很多相关的命令,我们在编译和运行程序时,都需要使用到JDK中的相关命令。

这些命令作为JDK中的主要组件。

我们开看JDK中的2个主要组件:

1、-javac ——编译器,是编译组件,也是编译命令,可以将源程序转成字节码

2、-java ——运行编译后的java程序(.class后缀的)

Java中的重要概念——JRE

JRE(Java Runtime Environment):Java运行时环境的简称

JRE包括2个部分:

1、Java虚拟机

2、Java核心类库和相关的支持文件

JRE和JDK的区别是?

1、如果只需要运行Java程序,下载安装JRE即可。即程序的所有执行过程,用JRE即可。比如程序上线,交个用户使用了,用户那里只需要安装JRE就行了。如果不安装JRE,那Java程序就不能运行的。

2、如果要开发Java软件, 那只有JRE就不能满足需要了,就需要下载JDK了。

即:

JDK:面向开发人员

JRE:面向使用者

3、在JDK中会附带JRE的,即JDK包含JRE。

下面,我们看下JDK、JRE、JVM三者之间有怎样的联系?

JDK、JRE、JVM三者之间有怎样的联系?

如图演示:

JDK包含JRE,JRE包含JVM

Java 平台

1、Java SE:我们在Java基础部分,主要学习Java SE ,它是Java的标准版。Java SE主要开发桌面程序,比如说QQ、office、包括我们后面要使用的开发工具Eclipse都是桌面程序。Java SE可以开发这一类的程序,Java SE为后面的Java EE提供基础,Java SE 本身是基于“JDK和JRE”的。所以,后续软件安装的过程,我们会安装JDK,是为了支撑Java SE的学习。

2、Java EE:是Java的企业版,我们的网页的web程序,是由Java EE实现的。 Java EE除了Java SE中的内容,还包括jsp、servlet等web开发所需要的技术。主要应用于电商网站、门户网站这样一些网站产品的开发。

3、Java ME:Java微型版,主要用于移动设备的开发。这个在Android火起来之前,Java ME还是有很大的市场份额的,但是随着Android、ios兴起之后,JavaME用的就非常少了。

ok,关于Java简介就到这里。

主要包括:

Java的历史

Java的几个重要 JDK、JRE、JVM

Java的三个平台

002 01 Android 零基础入门 01 Java基础语法 01 Java初识 02 Java简介的更多相关文章

  1. # 095 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 03 封装总结 01 封装知识点总结

    095 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

  2. 094 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 02 static关键字 04 static关键字(续)

    094 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

  3. 093 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 02 static关键字 03 static关键字(下)

    093 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

  4. 092 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 02 static关键字 02 static关键字(中)

    092 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

  5. 091 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 02 static关键字 01 static关键字(上)

    091 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

  6. 090 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 04 使用包进行类管理(2)——导入包

    090 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

  7. 089 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 使用包进行类管理(1)——创建包

    089 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...

  8. 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 02 封装的代码实现

    088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 02 封装的代码实现 本文知识点:Java封装的代码实现 说明:因为时间紧张,本人写博客过程中只 ...

  9. 087 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 01 封装的概念和特点

    087 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 01 封装的概念和特点 本文知识点:封装的概念和特点 说明:因为时间紧张,本人写博客过程中只是对 ...

随机推荐

  1. 轻轻松松学CSS:float

    float属性,会使元素向左或向右移动,其周围的元素也会重新排列.float不仅自己飘忽不定,还对周围元素有影响,这种影响力不容小觑.他捉摸不定(浮动规律不好把握),他干涉他国内政(对周围元素有影响) ...

  2. 利用分块传输吊打所有WAF--学习笔记

    在看了bypassword的<在HTTP协议层面绕过WAF>之后,想起了之前做过的一些研究,所以写个简单的短文来补充一下文章里“分块传输”部分没提到的两个技巧. 技巧1 使用注释扰乱分块数 ...

  3. Python技术调查

    1. IDE 2. Local Debugging & Remote Debugging 3. Profiling

  4. python小白入门基础(二:变量)

    #变量:可以改变的量就是变量,实际上是由内存开辟的一块空间,临时存在内存中,以便后续代码使用.#作用:代指内存中某个地址中的内容. #1.变量的概念name = "王五"name ...

  5. C++11中std::move、std::forward、左右值引用、移动构造函数的测试

    关于C++11新特性之std::move.std::forward.左右值引用网上资料已经很多了,我主要针对测试性能做一个测试,梳理一下这些逻辑,首先,左值比较熟悉,右值就是临时变量,意味着使用一次就 ...

  6. 1DadaFrame和Series创建

    通过GroupBy创建DF对象 sn_group=data.groupby('SN') purchase_count=sn_group.count().Price average_purchase_p ...

  7. JavaScript(es6)数组常用的方法

    常用方法 1.forEach() var data = [1,2,3,4,5]; var sum = 0;//求和 data.forEach((item)=>{sum+=item}) //给原数 ...

  8. sql如何查询不包含中文

    SELECT * FROM dbo.表名 WHERE 字段名 NOT LIKE '%[吖-座]%'

  9. MongoDB基础总结

    1.数据可基本操作 1. 创建数据库 use  databaseName 选择一个数据库,如果数据库不存在就自动创建一个数据库 只有向数据库中插入数据时,数据库才会被真实创建出来,而当数据库中没有数据 ...

  10. appium的基本环境配置

    1.先安装jdk1.7或jdk1.8之后,并配置好环境变量 2.安装Android SDK(安卓软件开发包),测试Android手机必然要安装Android SDK,例如android-sdk_r24 ...