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. spring cloud 路由

    Spring Cloud Feign:用于微服务之间,只映射内网ip Spring Cloud Gateway:用于服务端,对外开放的接口,对外统一访问gateway映射的ip 是这样吗? 但是这样权 ...

  2. Mac本地生成SSHKey的方法

    1. 查看秘钥是否存在 打开终端查看是否已经存在SSH密钥:cd ~/.ssh 如果没有密钥则不会有此文件夹,有则备份删除,   也可以直接删除, 2.生成新的秘钥, 命令如下 $ssh-keygen ...

  3. 初级知识点一——C#中的值类型与引用类型

    从C#语言的定义中可以知道,C#支持两种值类型,分别是 值类型和引用类型,那么两者的区别到底在哪儿呢? 值类型特点: 1. 值类型包含 a 预定义的值类型 b 用户自定义的值类型(struct) 2. ...

  4. 转载:Oracle常见字段类型

    转载节选自:https://bbs.csdn.net/topics/220059184 数据类型 参数 描述 char(n) n=1 to 2000字节 定长字符串,n字节长,如果不指定长度,缺省为1 ...

  5. Java通过http协议发送Get和Post请求

    https://blog.csdn.net/qq_32599479/article/details/94439131

  6. 记一次奇怪的cookie丢失

    .net给Image控件设置一个空图片路径的时候出现丢失cookie 比如说, img_path.ImageUrl ="../"+  ds.Tables[0].Rows[0][&q ...

  7. -webkit-line-clamp下多行文字溢出点点点...

    限制在一个块元素显示的文本的行数. -webkit-line-clamp 是一个 不规范的属性(unsupported WebKit property),它没有出现在 CSS 规范草案中. 为了实现该 ...

  8. appium 基础二:常用api接口

    一.获取手机分辨率 size=driver.get_window_size()#获取手机屏幕大小,分辨率 print(size)#{'width': 720, 'height': 1280} 得到的是 ...

  9. JS语法_集合

    数组方法 forEach // no-log Array.prototype.forEach_ = function (cb) { let len = this.length for (let i = ...

  10. [LeetCode] 139. 单词拆分(DP)

    题目 给定一个非空字符串 s 和一个包含非空单词列表的字典 wordDict,判定 s 是否可以被空格拆分为一个或多个在字典中出现的单词. 说明: 拆分时可以重复使用字典中的单词. 你可以假设字典中没 ...