【JavaSE·复习篇】第一章 Java概述

【JavaSE·复习篇】第一章 Java概述

学习目标:

  • 能够使用常见的DOS命令
  • 理解Java语言的跨平台实现原理
  • 理解JDK/JRE/JVM的组成和作用
  • 能够配置环境变量JAVA_HOME(会参照笔记配置)
  • 能够编写HelloWorld程序编译并执行
  • 会使用单行注释和多行注释
  • 能够辨识关键字
  • 理解标识符的含义
  • 理解Java中的基本数据类型分类
  • 能够理解常量的概念
  • 能够定义8种基本数据集类型的变量
  • 能够分清楚两种输出语句的区别

主要内容:

  • Java语言的发展历史
  • 安装JDK
  • 配置环境变化
  • 编写HelloWorld程序
  • Java注释
  • Java关键字
  • 标识符
  • 常量
  • 变量
  • Java基本数据类型

第一章 Java概述

1.1 JavaSE体系介绍

JavaSE知识图解

在这里插入图片描述

JavaSE知识模块介绍

  • 第一部分:计算机编程语言核心结构:数据类型运算符流程控制数组、…
  • 第二部分:Java面向对象核心逻辑:类和对象封装继承多态抽象接口、…
  • 第三部分:JavaSE核心高级应用:集合I/O多线程网络编程反射机制、…
  • 第四部分:Java新特性:Lambda表达式函数式编程新Date/Time API接口的默认、静态和私有方法、…
  • 第五部分:MySQL/JDBC核心技术:SQL语句数据库连接池DBUtils事务管理批处理、…

1.2 计算机语言介绍(了解)

计算机语言是什么

所谓计算机编程语言,就是人们可以使用编程语言对计算机下达命令,让计算机完成人们需要的功能。

计算机语言发展

  • 第一代:机器语言
  • 第二代:汇编语言
  • 第三代:高级语言

计算机语言排行榜

在这里插入图片描述

计算机语言走势

在这里插入图片描述

1.3 Java语言概述(了解)

Java生态圈

**Java是目前应用最为广泛的软件开发平台之一。**随着Java以及Java社区的不断壮大,Java 也早已不再是简简单单的一门计算机语言了,它更是一个平台、一种文化、一个社区。

**作为一个平台,**Java虚拟机扮演着举足轻重的作用。除了 Java语言,任何一种能够被编译成字节码的计算机语言都属于Java这个平台。Groovy、Scala、 JRuby、Kotlin等都是Java平台的一部分,它们依赖于Java虚拟机,同时,Java平台也因为它们变得更加丰富多彩。

**作为一种文化,**Java几乎成为了 “开源”的代名词。在Java程序中,有着数不清的开源软件和框架。如Tomcat、Struts, Hibernate, Spring等。就连JDK和JVM自身也有不少开源的实现,如OpenJDK、Apache Harmony。可以说,“共享”的精神在Java世界里体现得淋漓尽致。

**作为一个社区,**Java拥有全世界最多的技术拥护者和开源社区支持,有数不清的论坛和资料。从桌面应用软件、嵌入式开发到企业级应用、后台服务器、中间件,都可以看到Java的身影。其应用形式之复杂、参与人数之众多也令人咋舌。可以说,Java社区已经俨然成为了一个良好而庞大的生态系统。其实这才是Java最大的优势和财富。

Java 是最好的语言吗?

不是,因为在每个领域都有更合适的编程语言。

  • C 语言无疑是现代计算机软件编程语言的王者,几乎所有的操作系统都是 C 语言写成的。C++ 是面向对象的 C 语言,一直在不断的改进。

  • JavaScript 是能运行在浏览器中的语言,丰富的前端界面离不开 Javascript 的功劳。近年来的 Node.js 又在后端占有一席之地。

  • Python 用于系统管理,并通过高性能预编译的库,提供 API 来进行科学计算,文本处理等,是 Linux 必选的解释性语言。

  • Ruby 强于 DSL(领域特定语言),程序员可以定义丰富的语义来充分表达自己的思想。

  • Erlang 就是为分布式计算设计的,能保证在大规模并发访问的情况下,保持强壮和稳定性。

  • Go 语言内置了并发能力,可以编译成本地代码。当前新的网络相关项目,很大比例是由 Go 语言编写的,如 Docker、Kubernetes 等。

  • 编写网页用 PHP,函数式编程有 Lisp,编写 iOS 程序有 Swift/Objective-C。

  • R的思想是:它可以提供一些集成的统计工具,但更大量的是它提供各种数学计算、统计计算的函数,从而使使用者能灵活机动的进行数据分析,甚至创造出符合需要的新的统计计算方法

  • SQL 是用于访问和处理数据库的标准的计算机语言, 这类数据库包括:MySQL,Oracle, Sybase, SQL Server, DB2, Access 等等

一句话概括,能留在排行榜之上的语言,都是好的语言,在其所在的领域能做到最好。

Java语言发展历史

Java诞生于SUN(Stanford University Network),09年SUN被Oracle(甲骨文)收购。

Java之父是詹姆斯.高斯林(James Gosling)。

1996年发布JDK1.0版。

目前最新的版本是Java13。我们学习的Java8。
在这里插入图片描述

Java技术体系平台

  • JavaSE(Java Platform, Standard Edition标准版):允许您在桌面和服务器上开发和部署Java应用程序。Java提供了丰富的用户界面、性能、多功能性、可移植性和当今应用程序所需的安全性。
  • JavaEE(Java Platform, Enterprise Edition企业版):是为开发企业环境下的应用程序提供的一套解决方案,主要针对于Web应用程序开发。
  • JavaME(Java Platform, Micro Edition 小型版):为互联网上的嵌入式和移动设备上运行的应用提供了一个健壮、灵活的环境:微控制器、传感器、网关、移动电话、个人数字助理(PDA)、电视机顶盒、打印机等等。JavaME包括灵活的用户界面、健壮的安全性、内置的网络协议,以及支持动态下载的网络和离线应用程序。基于JavaME的应用程序在许多设备上都是可移植的,但是利用了每个设备的本机功能。
    • Java Embedded: 用于解锁物联网的智能设备的价值:
      通过远程市场更新和刷新功能延长产品生命周期和价值;
      利用Java的可伸缩性、健壮性、可移植性和全套功能,提高生产效率,降低成本,缩短上市时间;
      在边缘启用快速数据功能;
    • Java Card:使安全元件(如智能卡和其他防篡改安全芯片)能够承载采用Java技术的应用程序。Java card提供了一个安全的、可互操作的执行平台,它可以在一个资源受限的设备上存储和更新多个应用程序,同时保持最高的认证级别和与标准的兼容性。
    • Java TV:是一种基于JavaME的技术,它为开发在tv和机顶盒设备上运行的java应用程序提供了一个性能良好、安全且易于实现的解决方案。使用Java TV运行时,开发人员可以轻松创建应用程序,例如电子节目指南(EPG)、视频点播(VOD)客户端、游戏和教育应用程序、用于访问Internet数据的应用程序(例如天气、新闻播报器、社交网络)以及大多数蓝光光盘标题上的用户界面和奖金内容。

1.4 Java语言跨平台原理

Java语言的特点

  • **完全面向对象:**Java语言支持封装、继承、多态,面向对象编程,让程序更好达到高内聚低耦合的标准。
  • **支持分布式:**Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
  • **健壮型:**Java的强类型机制、异常处理、垃圾的自动收集等是Java程序健壮性的重要保证。对指针的丢弃是Java的明智选择。
  • **安全:**Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击。如:安全防范机制(类ClassLoader),如分配不同的名字空间以防替代本地的同名类、字节代码检查。
  • **跨平台性:**Java程序(后缀为java的文件)在Java平台上被编译为体系结构中立的字节码格式(后缀为class的文件),然后可以在实现这个Java平台的任何系统中运行。

Java语言的跨平台原理

  • 跨平台:任何软件的运行,都必须要运行在操作系统之上,而我们用Java编写的软件可以运行在任何的操作系统上,这个特性称为Java语言的跨平台特性。该特性是由JVM实现的,我们编写的程序运行在JVM上,而JVM运行在操作系统上。
  • JVM(Java Virtual Machine ):Java虚拟机,简称JVM,是运行所有Java程序的假想计算机,是Java程序的运行环境之一,也是Java 最具吸引力的特性之一。我们编写的Java代码,都运行在JVM 之上。

在这里插入图片描述

如图所示,Java的虚拟机本身是不具备跨平台功能的,每个操作系统下都有不同版本的虚拟机。

  • **JRE ** (Java Runtime Environment) :是Java程序的运行时环境,包含JVM 和运行时所需要的核心类库
  • JDK (Java Development Kit):是Java程序开发工具包,包含JRE 和开发人员使用的工具。

我们想要运行一个已有的Java程序,那么只需安装JRE 即可。

我们想要开发一个全新的Java程序,那么必须安装JDK ,其内部包含JRE

在这里插入图片描述
在这里插入图片描述

1.5 JDK下载和安装

JDK的下载

  • 下载网址:www.oracle.com

  • 下载步骤:

    • 登录Oracle公司官网,www.oracle.com,如图所示:在底部选择Developers开发者
      在这里插入图片描述
    • Developers页面中间的技术分类部分,选择Java,单击进入,如图所示:

    在这里插入图片描述

    • 下拉页面,找到Java,在此选择JavaSEDownload,单击进入,如图所示:
      在这里插入图片描述
    • 选择Downloads选项卡,默认是最新版的Java13下载,在此处选择Oracle JDK DOWNLOAD,单击进入可以下载JDK13,如图所示:
      在这里插入图片描述
    • 选择Accept License Agreement,并选择对应的操作系统类型,如图所示
      在这里插入图片描述
    • 如果要下载之前JDK版本,那么在刚才JavaSE/Download页面,下拉到最下面,找到Java Archive(Java档案馆),单击Download
      在这里插入图片描述
      在这里插入图片描述
      例如:这里选择JavaSE 8(8U211 and later),选择Accept License Agreement,并选择对应的操作系统类型。早期版本分为32位/64位操作系统区分,其中x86表示32位,x64表示64位。
      在这里插入图片描述

JDK的安装

  • 安装步骤:
    • 双击jdk-8u202-windows-x64.exe文件,并单击下一步,如图所示:
      在这里插入图片描述
    • 取消独立JRE的安装,单击公共JRE前的下拉列表,选择此功能将不可用如图所示:
      在这里插入图片描述
    • 修改安装路径,单击更改,如图所示:
      在这里插入图片描述
    • 将安装路径修改为D:\develop\Java\jdk1.8.0_202\,并单击确定,如图所示:
      在这里插入图片描述
    • 单击下一步,如图所示:
      在这里插入图片描述
    • 稍后几秒,安装完成,如图所示:
      在这里插入图片描述
    • 目录结构,如图所示:
      在这里插入图片描述

1.6 常用DOS命令(了解)

什么是DOS

Java语言的初学者,学习一些DOS命令,会非常有帮助。DOS是一个早期的操作系统,现在已经被Windows系统取代,对于我们开发人员,目前需要在DOS中完成一些事情,因此就需要掌握一些必要的命令。

Dos: Disk Operating System 磁盘操作系统, 简单说一下windows的目录结构。
在这里插入图片描述

进入DOS操作窗口

  • 按下Windows+R键,打开运行窗口,输入cmd回车,进入到DOS的操作窗口。
    在这里插入图片描述
  • 打开DOS命令行后,看到一个路径 C:\Users\... 就表示我们现在操作的磁盘是C盘的Users的final目录。
    在这里插入图片描述

常用命令

进入目录命令:cd

(1)回到根目录

cd /  或  cd \

在这里插入图片描述

(2)切换到上一级

cd ..

在这里插入图片描述

(3)当前盘的其他目录下

绝对路径:从根目录开始定位,例如:cd d:\test200\1 或者 cd d:/test200/1

相对路径:从当前目录开始定位,例如:…\…\…\test200\1 或者 …/…/…/test200/1

例如:现在在d:/test100/hello/a目录,要切换到d:/test200/1目录
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

切换盘符命令

(1)直接盘符:

例如:要切换到D盘,直接d:

(2)使用cd命令

例如:要切换到E盘,可以使用cd /D e:

使用 /D 开关,除了改变驱动器的当前目录之外,还可改变当前驱动器。
在这里插入图片描述

查看当前目录下有什么命令:dir

在这里插入图片描述
在这里插入图片描述

新建目录命令:md (make directory)
//在当前目录下创建hello文件夹
md hello

//在当前目录下创建a,b,c三个文件夹
md a b c

//在d盘test200下创建ok200文件夹
md d:\test200\ok200

在这里插入图片描述

新建空文件命令:type nul
type nul > 文件名.扩展名
追加内容到文件命令:echo
echo 内容 > 文件名.扩展名

在这里插入图片描述

复制(copy)或移动(move)文件
copy 源文件 目标目录\新文件名.扩展名
move 源文件 目标目录

在这里插入图片描述

删除文件命令:del
//删除指定文件
del 文件名.扩展名
del 目标目录\文件名.扩展名

删除所有文件并询问
del *.*

删除所有文件不询问
del /Q *.*

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

删除目录命令:rd(remove directory)
//删除空目录
rd 空目录名

//删除目录以及下面的子目录和文件,带询问
rd /S 非空目录名

//删除目录以及下面的子目录和文件,不带询问
rd /S/Q 非空目录名

注意:你在d:\test100\hello\a中,你不能删除test100、hello、a这几个目录
在这里插入图片描述
在这里插入图片描述

查看某个目录的下一级目录结构:tree
tree 目录

tree /F 目录
/F   显示每个文件夹中文件的名称。
清屏命令:cls
cls
退出命令:exit
exit

1.7 配置环境变量

为什么配置path?

希望在命令行使用javac.exe等工具时,任意目录下都可以找到这个工具所在的目录。

例如:我们在C:\Users\Irene目录下使用java命令,结果如下:
在这里插入图片描述
我们在JDK的安装目录的bin目录下使用java命令,结果如下:
在这里插入图片描述
我们不可能每次使用java.exe,javac.exe等工具的时候都进入到JDK的安装目录下,太麻烦了。我们希望在任意目录下都可以使用JDK的bin目录的开发工具,因此我们需要告诉操作系统去哪里找这些开发工具,这就需要配置path环境变量。

配置path

步骤:

  • 打开桌面上的计算机,进入后在左侧找到计算机,单击鼠标右键,选择属性,如图所示:
    在这里插入图片描述
  • 选择高级系统设置,如图所示:
    在这里插入图片描述
  • 高级选项卡,单击环境变量,如图所示:
    在这里插入图片描述
  • 系统变量中,选中Path 环境变量,双击或者点击编辑 ,如图所示:
    在这里插入图片描述
  • 在变量值的最前面,键入D:\develop\Java\jdk1.8.0_202\bin; 分号必须要写,而且还要是英文符号。如图所示:
    在这里插入图片描述
  • 环境变量配置完成,重新开启DOS命令行,在任意目录下输入javac 命令,运行成功。
    在这里插入图片描述

配置JAVA_HOME+path

步骤:

  • 打开桌面上的计算机,进入后在左侧找到计算机,单击鼠标右键,选择属性,如图所示:
    在这里插入图片描述
  • 选择高级系统设置,如图所示:
    在这里插入图片描述
  • 高级选项卡,单击环境变量,如图所示:
    在这里插入图片描述
  • 系统变量中,单击新建 ,创建新的环境变量,如图所示:
    在这里插入图片描述
  • 变量名输入JAVA_HOME,变量值输入 D:\develop\Java\jdk1.8.0_202 ,并单击确定,如图所示:
    在这里插入图片描述
  • 选中Path 环境变量,双击或者点击编辑 ,如图所示:
    在这里插入图片描述
  • 在变量值的最前面,键入%JAVA_HOME%\bin; 分号必须要写,而且还要是英文符号。如图所示:
    在这里插入图片描述
  • 环境变量配置完成,重新开启DOS命令行,在任意目录下输入javac 命令,运行成功。
    在这里插入图片描述

1.8 入门程序HelloWorld

HelloWorld案例

程序开发步骤说明

JDK安装完毕,可以开发我们第一个Java程序了。

Java程序开发三步骤:编写编译运行
在这里插入图片描述

编写Java源程序
  1. D:\atguigu\javaee\JavaSE20190624\code\day01_code 目录下新建文本文件,完整的文件名修改为HelloWorld.java,其中文件名为HelloWorld,后缀名必须为.java
  2. 用记事本或notepad++等文本编辑器打开
  3. 在文件中键入文本并保存,代码如下:
public class HelloWorld {
  	public static void main(String[] args) {
    	System.out.println("HelloWorld");
  	}
}

友情提示: 每个字母和符号必须与示例代码一模一样。

第一个HelloWord 源程序就编写完成了,但是这个文件是程序员编写的,JVM是看不懂的,也就不能运行,因此我们必须将编写好的Java源文件 编译成JVM可以看懂的字节码文件 ,也就是.class文件。

编译Java源文件

在DOS命令行中,进入D:\atguigu\javaee\JavaSE20190624\code\day01_code目录,使用javac 命令进行编译。

命令:

javac Java源文件名.后缀名

举例:

javac HelloWorld.java

在这里插入图片描述
编译成功后,命令行没有任何提示。打开D:\atguigu\javaee\JavaSE20190624\code\day01_code目录,发现产生了一个新的文件 HelloWorld.class,该文件就是编译后的文件,是Java的可运行文件,称为字节码文件,有了字节码文件,就可以运行程序了。

Java源文件的编译工具`javac.exe

运行Java程序

在DOS命令行中,进入Java源文件的目录,使用java 命令进行运行。

命令:

java 类名字

举例:

java HelloWorld

友情提示:java HelloWord 不要写 不要写 不要写 .class

在这里插入图片描述
*

Java字节码文件的运行工具:java.exe

HelloWorld案例常见错误

  • 单词拼写问题
    • 正确:class 错误:Class
    • 正确:String 错误:string
    • 正确:System 错误:system
    • 正确:main 错误:mian
  • Java语言是一门严格区分大小写的语言
  • 标点符号使用问题
    • 不能用中文符号,英文半角的标点符号(正确)
    • 括号问题,成对出现

Java程序的结构与格式

结构:

{
    方法{
        语句;
    }
}

格式:

(1)每一级缩进一个Tab键

(2){}的左半部分在行尾,右半部分单独一行,与和它成对的"{"的行首对齐

Java程序的入口

Java程序的入口是main方法

public static void main(String[] args){
    
}

编写Java程序时应该注意的问题

1、字符编码问题

当cmd命令行窗口的字符编码与.java源文件的字符编码不一致,如何解决?
在这里插入图片描述
解决方案一:

在Notepad++等编辑器中,修改源文件的字符编码

在这里插入图片描述

解决方案二:

在使用javac命令式,可以指定源文件的字符编码
javac -encoding utf-8 Review01.java

2、大小写问题

(1)源文件名:

不区分大小写,我们建议大家还是区分

(2)字节码文件名与类名

区分大小写

(3)代码中

区分大小写

3、源文件名与类名一致问题?

(1)源文件名是否必须与类名一致?public呢?

如果这个类不是public,那么源文件名可以和类名不一致。

如果这个类是public,那么要求源文件名必须与类名一致。

我们建议大家,不管是否是public,都与源文件名保持一致,而且一个源文件尽量只写一个类,目的是为了好维护。

(2)一个源文件中是否可以有多个类?public呢?

一个源文件中可以有多个类,编译后会生成多个.class字节码文件。

但是一个源文件只能有一个public的类。

(3)main必须在public的类中吗?

不是。

但是后面写代码时,基本上main习惯上都在public类中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值