【Java基础】01_HelloWorld

本节知识导图:

第1章 开发前言

1.1 Java语言概述

1.1.1 什么是Java语言

Java语言是美国Sun公司(Stanford University Network),在1995年推出的高级的编程语言。所谓编程语言,是计算机的语言,人们可以使用编程语言对计算机下达命令,让计算机完成人们需要的功能。

1.1.2 Java语言发展历史

1995年Sun公司发布Java1.0版本
1997年发布Java 1.1版本
1998年发布Java 1.2版本
2000年发布Java 1.3版本
2002年发布Java 1.4版本
2004年发布Java 1.5版本
2009年Oracle甲骨文公司收购Sun公司,并于2011发布Java 1.7版本
2014年发布Java 1.8版本
2017年发布Java 9.0版本
2018年3月21日,发布 Java SE 10
2018年9月25日,发布Java SE 11
2019年3月20日,发布Java SE 12

1.1.3 Java语言能做什么

Java语言主要应用在互联网程序的开发领域。常见的互联网程序比如天猫、京东、物流系统、网银系统等,以及服务器后台处理大数据的存储、查询、数据挖掘等也有很多应用。

编程语言的作用

  • 编程语言负责按照语法执行
  • 编程语言负责和计算机交互

程序员的任务

  • 程序员负责理解问题
  • 程序员负责理解程序,并将问题转换为程序
  • 编程语言不负责解决问题,程序员才负责解决问题

1.2 计算机基础知识

1.2.1 二进制

计算机中的数据不同于人们生活中的数据,人们生活采用十进制数,而计算机中全部采用二进制数表示,它只包含0、1两个数,逢二进一,1+1=10。每一个0或者每一个1,叫做一个bit(比特)。
下面了解一下十进制和二进制数据之间的转换计算。
十进制数据转成二进制数据:使用除以2获取余数的方式

​ 二进制数据转成十进制数据:使用8421编码的方式

小贴士:
二进制数系统中,每个0或1就是一个位,叫做bit(比特)。

Java中的字面值的八进制和十六进制

以0开头的整数位八进制

  • 05就是十进制的5

  • 011就是十进制的9

以0x开头的整数位十六进制

  • 0xF就是十进制的15
  • 0x11就是十进制的17

1.2.2 字节

字节是我们常见的计算机中最小存储单元。计算机存储任何的数据,都是以字节的形式存储,右键点击文件属性,
我们可以查看文件的字节大小。
8个bit(二进制位) 0000-0000表示为1个字节,写成1 byte或者1 B。
8 bit = 1 B
1024 B =1 KB
1024 KB =1 MB
1024 MB =1 GB
1024 GB = 1 TB

1.2.3 常用DOS命令

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

如何打开DOS命令行窗口?

按下Windows+R键盘,打开运行窗口,输入cmd回车,进入到DOS的操作窗口。
打开DOS命令行后,看到一个路径 c:\user 就表示我们现在操作的磁盘是c盘

如何以管理员运行命令提示符?

打开开始菜单,进入所有程序—附件中找到到cmd.exe,右键点击,选择以管理员权限运行

DOS常用命令:

命令 操作符号
盘符切换命令 盘符名:
查看当前文件夹 dir
进入文件夹命令 cd 文件夹名
进入上一层文件夹命令 cd…
退出到磁盘根目录 cd \
清屏 cls

第2章 Java语言开发环境搭建

**术语:**Java 是一个通用术语,用于表示 Java 软件及其组件,包括“Java 运行时环境 (JRE)”、“Java 虚拟机 (JVM)”以及“插件”。

**版本:**版本指的是 Java 系列和更新编号。示例:在网站上或者 Windows 程序中,版本显示为 Java 8 Update 25。旧版本也可显示为 1.7.0_65,这表示 Java 7 Update 65。 “帮助”部分包含有关以下 Java 版本的信息。

2.1 Java虚拟机——JVM

JVM(Java Virtual Machine ):Java虚拟机,简称JVM,是运行所有Java程序的假想计算机,是Java程序的运行环境,是Java 最具吸引力的特性之一。我们编写的Java代码,都运行在 JVM 之上。

跨平台:任何软件的运行,都必须要运行在操作系统之上,而我们用Java编写的软件可以运行在任何的操作系统上,这个特性称为Java语言的跨平台特性。该特性是由JVM实现的,我们编写的程序运行在JVM上,而JVM运行在操作系统上。

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

2.2 JRE 和 JDK

JRE (Java Runtime Environment) :是Java程序的运行时环境,包含 JVM 和运行时所需要的 核心类库 。

JDK (Java Development Kit):是Java程序开发工具包,包含 JRE 和开发人员使用的工具。

我们想要运行一个已有的Java程序,那么只需安装 JRE 即可。
我们想要开发一个全新的Java程序,那么必须安装 JDK 。

2.3 JDK8安装

详细安装,请查看官网安装教程

2.3.1 在 Mac 上安装 Java

在 Mac 上安装 Java下载 jre-8u65-macosx-x64.dmg 文件。
在下载文件前,需查看并同意许可证协议的条款。
双击 .dmg 文件以启动它双击程序包图标以启动安装向导

2.3.2 在Windows下脱机安装Java

从手动 Java 下载页面下载可执行文件,其中包含用户自行完成安装所需的全部文件。
要在 Microsoft Windows 上安装 Java,需要管理员权限。
修改安装路径,不要包含中文和空格。

2.4 如何配置环境变量

配置环境变量作用

开发Java程序,需要使用JDK中提供的工具,工具在JDK8安装目录的 bin 目录下。在DOS命令行下使用这些工具,就要先进入到JDK的bin目录下,这个过程就会非常的麻烦。
不进入JDK的 bin 目录,这些工具就不能使用,会报错。

为了开发方便,我们想在任意的目录下都可以使用JDK的开发工具,则必须要配置环境变量,配置环境变量的意义在于告诉操作系统,我们使用的JDK开发工具在哪个目录下。

配置环境变量步骤

2.4.1 Windows 7,8版本

  1. 计算机鼠标右键,选择属性
  2. 选择高级系统设置
  3. 高级 选项卡,点击 环境变量
  4. 点击新建 ,创建新的环境变量
  5. 变量名输入JAVA_HOME ,变量值复制粘贴JDK8的安装目录路径
  6. 选中 Path 环境变量, 双击 或者 点击编辑
  7. 在变量值的最前面,键入 %JAVA_HOME%\bin; 分号必须要写,必须是英文格式
  8. 环境变量配置完成,重新开启DOS命令行,在任意目录下输入javac 命令,运行成功。

2.4.2 Windows 10 版本

  1. 文件资源管理器 --> 此电脑鼠标右键 --> 选择属性
  2. 选择 高级系统设置 --> 选择环境变量
  3. 点击下方系统变量的新建,创建新的环境变量
  4. 变量名输入JAVA_HOME ,变量值复制粘贴JDK8的安装目录路径
  5. 选中 Path 环境变量, 双击 或者 点击编辑
  6. 点击新建,键入 %JAVA_HOME%\bin; 分号必须要写,必须是英文格式。选中该行,上移到最上方,点击确定。
  7. 环境变量配置完成,重新开启DOS命令行,在任意目录下输入javac 命令,运行成功。

2.4.3 Mac版本

安装时默认Java已加入环境变量,在任意目录下输入javac 命令,运行成功。
自己手动配置和修改的步骤:

Mac系统的环境变量,加载顺序为

  1. /etc/profile
  2. /etc/paths
  3. ~/.bash_profile
  4. ~/.bash_login
  5. ~/.profile
  6. ~/.bashrc
    其中1和2是系统级别的,系统启动就会加载,其余是用户接别的。3,4,5按照从前往后的顺序读取,如果3文件存在,则后面的几个文件就会被忽略不读了,以此类推。~/.bashrc没有上述规则,它是bash shell打开的时候载入的。建议在3中添加环境变量。

1.查看java路径
终端中输入which java显示出安装路径/Library/Java/JavaVirtualMachines/jdk1.8.0_201.jdk/Contents/Home/bin/java

2.添加配置文件
终端中输入open ~/.bash_profile打开配置文件,在其中添加以下内容

# Setting PATH for Java 1.8.0
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_201.jdk/Contents/Home
PATH=$JAVA_HOME/bin:$PATH:.
CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.
export JAVA_HOME
export PATH
export CLASSPATH

path环境变量:
作用是指定命令搜索路径,在终端命令行中输入javac编译程序时,它会到path指定的路径中查找相应的命令程序。把 jdk安装目录下的bin目录添加到 path环境变量中,bin包含经常要用到的可执行文件 java、javac、 javadoc等设置好之后,就可以在任意目录下执行 java、javac等命令了。

classpath 环境变量:
作用是指定类的搜索路径,要使用我们编写好的 java类,首先要找到它们Java虚拟机(JVM )就是通过 classpath环境变量来寻找类的,我们需要将 jdk的目录下的子目录lib目录中的 rt.jar设置到classpath中,注意:当前目录 “.” 也要加到该目录中

3.保存测试
将修改后的文件保存,并在终端中输入命令source ~/.bash_profile生效配置文件
输入echo $JAVA_HOME会显示出刚刚更新的地址,则代表修改成功

第3章 HelloWorld入门程序

开发环境已经搭建完毕,可以开发我们第一个Java程序了,以在windows下为例,编写入门案例,Mac下操作相同。
Java程序开发三步骤:编写、编译、运行。

3.1 编写Java源程序

  1. 在桌面目录下新建文本文件,完整的文件名修改为 HelloWorld.java ,其中文件名为 HelloWorld ,后缀名必须为.java。

  2. 用记事本打开

windows下可用notepad++记事本软件。
Mac下使用sublime

  1. 在文件中键入文本并保存,代码如下:
public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello World!");
    }
}

文件名必须是 HelloWorld ,保证文件名和类的名字是一致的,区分大小写。
每个字母和符号必须与示例代码一模一样。

3.2 编译Java源文件

在DOS命令行中,进入Java源文件的目录(即桌面),使用 javac 命令进行编译。
命令: javac Java源文件名.后缀名
举例: javac HelloWorld.java
编译成功后,命令行没有任何提示【在命令行下,命令没有报错就是成功执行了】
打开 桌面 目录,发现产生了一个新的文件 HelloWorld.class ,该文件就是编译后的文件,是Java的可运行文件,称为字节码文件,有了字节码文件,就可以运行程序了。

3.3 运行Java程序

在DOS命令行中,进入Java源文件的目录,使用 java 命令进行运行。
命令:java 类名字
举例: java HelloWorld

java HelloWord 不要写 不要写 不要写 .class

3.4 入门程序说明

编译和运行是两回事
编译:是指将我们编写的Java源文件翻译成JVM认识的class文件,在这个过程中, javac 编译器会检查我们所写的程序是否有错误,有错误就会提示出来,如果没有错误就会编译成功。
运行:是指将 class文件 交给JVM去运行,此时JVM就会去执行我们编写的程序了。

关于main方法
main方法:称为主方法。写法是固定格式不可以更改。main方法是程序的入口点或起始点,无论我们编写多
少程序,JVM在运行的时候,都会从main方法这里开始执行。

关键字keywords
关键字:是指在程序中,Java已经定义好的单词,具有特殊含义。
HelloWorld案例中,出现的关键字有publicclassstaticvoid 等,这些单词已经被
Java定义好,全部都是小写字母,在编辑器中颜色特殊。

Java代码三级跳——表达式、语句和代码块

  • 表达式:Java中最基本的一个运算。比如一个加法运算表达式。1+2是一个表达式,a+b也是。
  • 语句(statement):类似于平时说话时的一句话,由表达式组成,以;结束。int a=3;y = a+9;System.out.println(y);都是语句
  • 代码块:一对大括号括起来的就是一个代码块。

3.5 标识符如何命名

标识符:是指在程序中,我们自己定义内容。比如类的名字、方法的名字和变量的名字等等,都是标识符。是用来给包 类 方法 变量定义名称的。
HelloWorld案例中,出现的标识符有类名字 HelloWorld 。

命名规则: 硬性要求

  • 标识符可以包含 英文字母26个(区分大小写) 、 0-9数字 、 $(美元符号) 和 _(下划线) 。
  • 标识符不能以数字开头。
  • 标识符不能是关键字。

命名规范: 软性建议

命名尽量做到见名知意

  • 包名规范:以公司的域名倒叙来命名。
  • 类名规范:首字母大写,后面每个单词首字母大写(大驼峰式)。
  • 方法名规范: 首字母小写,后面每个单词首字母大写(小驼峰式)。
  • 变量名规范:全部小写。
  • 常量名规范:一个单词组成,全部字母大小;如果是由多个单词组成 每个单词除了大写以外 还要用_连接,如:MY_FAMILY_ADDR。

3.6 Java中有哪些注释comment

注释:就是对代码的解释和说明。其目的是让人们能够更加轻松地了解代码。为代码添加注释,是十分必须要的,它不影响程序的编译和运行。

Java中有单行注释、多行注释和文档注释。
单行注释以//开头,换行结束
多行注释以/*开头,以*/结束
文档注释:Java 语言提供了专门用于生成文档的注释。文档注释是以 /** 开始,以 */结束

第4章 常量、变量和数据类型

4.1 常量是指什么

常量:是指在Java程序中固定不变的数据

类型 含义 数据举例
整数常量 所有的整数 0,-8,8,888
小数常量 所有的小数 0.0, -0.1,2.55
字符常量 单引号引起来,只能写一个字符,必须有内容 ’a’ ,'1’
字符串常量 双引号引起来,可以写多个字符,也可以不写 "A" ,"Hello"
布尔常量 只有两个值 true ,false
空常量 只有一个值 null

输出各种类型的常量

//输出整数常量
System.out.println(123);
//输出小数常量
System.out.println(0.125);
//输出字符常量
System.out.println('A');
//输出布尔常量
System.out.println(true);
//输出字符串常量
System.out.println("你好Java");

4.2 什么是变量

变量:常量是固定不变的数据,那么在程序中可以变化的量称为变量。
数学中,可以使用字母代替数字运算,例如 x=1+5 或者 6=x+5。
程序中,可以使用字母保存数字的方式进行运算,提高计算能力,可以解决更多的问题。比如x保存5,x也可以保存6,这样x保存的数据是可以改变的,也就是我们所讲解的变量。
Java中要求一个变量每次只能保存一个数据,必须要明确保存的数据类型。

4.3 数据类型有哪些

Java的数据类型分为两大类:
基本数据类型:包括整数、浮点数、字符、布尔类型
引用数据类型:包括类、数组、接口
基本数据类型,Java中的默认类型:整数类型是 int 、浮点类型是 double

数据类型 关键字 内存占用 取值范围
字节型 byte 1个字节 -128~127
短整型 short 2个字节 -32768~32767
整型 int(默认) 4个字节 -231~231-1
长整型 long 8个字节 -263~263-1
单精度浮点数 float 4个字节 1.4013E-45~3.4028E+38
双精度浮点数 double(默认) 8个字节 4.9E-324~1.7977E+308
字符型 char 2个字节 0-65535
布尔类型 boolean 1个字节 true,false

4.4 如何定义变量

变量定义的格式包括三个要素: 数据类型变量名数据值
格式: 数据类型 变量名 = 数据值;
练习:定义所有基本数据类型的变量,代码如下:

 //定义字节型变量
 byte b = 100;
 System.out.println(b);
 //定义短整型变量
 short s = 1000;
 System.out.println(s);
 //定义整型变量
 int i = 123456;
 System.out.println(i);
 //定义长整型变量
 long l = 12345678900L;
 System.out.println(l);
 //定义单精度浮点型变量
 float f = 5.5F;
 System.out.println(f);
 //定义双精度浮点型变量
 double d = 8.5;
 System.out.println(d);
 //定义布尔型变量
 boolean bool = false;
 System.out.println(bool);
 //定义字符型变量
 char c = 'A';
 System.out.println(c);

注意事项

long类型:数据后加l、L表示,建议加L表示。
float类型:数据后加f、F表示,建议加F表示。
变量名称:在同一个大括号范围内,变量的名字不可以相同。
变量赋值:定义的变量,不赋值不能使用。

本节思考:

  1. Java可以进行哪些方面的软件开发?
  2. 如何用管理员身份打开DOS命令行窗口?
  3. 简述JDK\JRE\JVM的关系?
  4. 简述Java是如何实现扩平台的?
  5. 为什么要配置环境变量?
  6. java提供了哪些数据类型?
  7. 标识符的组成规则和命名原则?
发布了35 篇原创文章 · 获赞 12 · 访问量 6628

猜你喜欢

转载自blog.csdn.net/u012955829/article/details/104110461