第一章 Java概述

Java基础语法

学习目标

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

第一章 Java概述

1. 基础常识

**软件:**一系列按照特定顺序组织的计算机数据和指令的集合。分为:系统软件和应用软件。

系统软件:Windows,Mac Os,Linux,Unix,Android,······

应用软件:word,ppt·····

人机交互方式:图形化界面 —— 命令行方式

常用DOS命令:

dir: 列出当前目录下的文件以及文件夹

md: 创建目录

rd: 删除目录

cd: 进入指定目录

cd…: 退回上一级目录

cd: 退回到根目录

del: 删除文件

exit: 退出dos命令

​ 补充:echo javaname>1.doc

2. 计算机语言的发展迭代史

第一代:机器语言

第二代:汇编语言

第三代:高级语言

​ >面向过程 C,Pascal···

​ >面向对象 Java,Js,Python,Scala···

3. Java语言介绍

3.1 Java语言概述

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

  • Java之父是詹姆斯·高斯林(James Gosling);

  • 目前最新的版本是JDK12,使用版本Java8。

3.2 Java语言发展历史

  • 1996年,发布JDK1.0

  • 2004年,发布里程碑式版本,JDK1.5,更名为JDK5.0

  • 2014年,发布JDK8.0,是继JDK5.0变化最大的版本

3.3 技术平台体系

​ JavaSE(标准版)、JavaME(小型版)、JavaEE(企业版)

3.4 Java语言跨平台

  1. Java语言的特点

    • 完全面向对象
    • 支持分布式
    • 健壮性
    • 安全
    • 跨平台性
  2. 跨平台原理

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

    • JDK、JRE、JVM的关系

    JDK = JRE+JAVA的开发工具(javac.exe,java.exe,javadoc.exe)

    JRE = JVM +Java核心类库

4. 开发环境搭建

4.1 path环境变量的配置

  1. 为什么配置path环境变量?

    path环境变量:windows操作系统执行命令时所要搜寻的路径;

    **原因:**希望java的开发工具(java.exe,javac.exe,java.exe)在任何的文件路径下都可以执行成功。

  2. 如何配置?

    JAVA_HOME = bin目录的上一层目录;

    Path = %JAVA_HOME%\bin;

4.2 Java的第一个程序

4.2.1步骤
  1. 编写代码

    Java要求所有的代码都保存为后缀名(扩展名)为.java源文件;

    创建一个java源文件:HelloWorld.java

    class HelloChina{
    	public static void main(String[] args){
    		System.out.println("Hello,World!");
    	}
    }
    
  2. 编译代码

    使用javac.exe命令编译我们的java源文件,生成字节码文件(文件名为类名);

    ① 为什么要编译?
    我们的Java程序是要在JVM(Java虚拟机中)运行,而JVM只认识“字节码”数据,不认识代码。
    所以,我们要把代码编译为.class字节码文件
    ② 如何编译?
    编译的工具:javac.exe
    命令的格式:javac 源文件名.java
    例如:javac HelloWorld.java
    编译的结果:得到一个或多个的.class文件

    javac HelloWorld.java
    
  3. 运行代码

    使用java.exe命令解释运行我们的字节码文件;
    ​ 运行的工具:java.exe
    ​ 命令的格式:java 字节码文件名

    java HelloChina.
    

[外链图片转存失败(img-U5OkkB78-1566919357331)(C:\Users\Time\AppData\Roaming\Typora\typora-user-images\1566911821945.png)]

4.2.2 说明
  1. Java的结构

    class 类名{
    	方法{
    		语句;
    	}
    }
    

    ​ 其中:HelloWorld是类,class是用来声明(定义)类用的。

    ​ Java的程序的入口:public static void main(String[] args){…};

    ​ 输出语句:System.out.println(“输出的内容”)。

  2. public与class的关系

    ​ 在一个java源文件中可以声明多个class,但是最多只能声明一个为public的,而且要求声明 为public的类的类名必须与源文件名相同。

    [外链图片转存失败(img-67aebrhs-1566919357332)(C:\Users\Time\AppData\Roaming\Typora\typora-user-images\1566912063399.png)]

  3. 程序的入口

    Java程序的入口是main()方法,格式是固定的;

public static void main(String[] args){
/*args:参数arguments
*/
}

编译的过程:

​ 编译以后,会生成一个或多个字节码文件,字节码文件的文件名与java源文件中的类名相同。

两种打印输出语句:
​ System.out.print(xx); 输出xx后不换行;
​ System.out.println(xx); 输出xx后换行。

4.2.3 Java程序运行过程中的问题

问题:字符编码不一致问题

  • Notepad++软件默认编码是UTF-8
  • cmd命令行默认编码是GBK

**解决方法:**修改Notepad++软件的编码

  1. 单独修改一个文件:(法一)
    【编码】菜单–>转为ANSI
  2. 修改以后所有的新建文件的编码:(法二)
    【设置】–>【首选项】–>【新建】选择ANSI编码

第二章 Java基础知识

1. 注释(annotation)

1.1 分类

  • 单行注释://
  • 多行注释:/* */
  • 文档注释:/** */

1.2 作用

  • 对所写的程序进行解释说明,增强可读性。
  • 调试所写的代码。

1.3 特点

  • 单行注释和多行注释的注释内容不参与编译。
  • 文档注释的注释内容可以被JDK提供的工具javadoc所解析,生成一套以网页文件形式体现的该程序的说明文档。
  • 多行注释不可以嵌套使用。

2. 关键字

​ 在Java编程语言中,有特殊意义的单词,例如:class,public,static,void。在Java中一共有50个关键字。其中有两个是保留字:goto, const
​ 在50个关键字之外,还有3个特殊值,true,false,null

​ class:声明类用的
​ public:表示公共的,在任意位置可见的
​ static:表示静态的,表示所有对象共享的
​ void:表示无返回值

3. 标识符

​ 凡是在代码中需要我们自己命名的地方都是标识符,例如:类名、方法名、变量名、包名等。

3.1 标识符的命名规则

  • 只能使用26个英文字母(包括大小写)、数字0-9、下划线(_)、美元符号($)
  • 数字不能开头
  • 不能包含空格
  • 不能直接使用关键字来命名标识符,但是可以包含关键字
    class class{}错误的
    class Test_class{}可以的
  • 严格区分大小写

3.2 标识符的命名规范

  • 见名知意;
  • 类名、接口名等:每一个单词的首字母大写,形式:XxxYyyZzz;
    类名这些是不建议用的,这里我们第一天刚刚学习,为了让大家晚上看代码,好知道顺序。
  • 变量名、方法名等:第一个单词小写,从第二个单词开始首字母大写,形式:xxxYyyZzz;
  • 包名:每一个单词都小写,单词之间使用.分割,形式:xxx.yyy.zzz;
  • 常量名:每一个单词都大写,单词之间使用分割,形式:XXX_YYY_ZZZ。

4. 常量

常量分为:

  • 常量名
    PI
  • 常量值:
    3.1415926…

5. 变量

​ 变量是代表JVM中内存的一块存储区域,这块存储区域中的值是可以变量的。

5.1 变量的三要素及分类

​ **三要素:**数据类型、变量名、变量值;

分类:

[外链图片转存失败(img-PWfvSihY-1566919357333)(E:/02-%E8%AF%BE%E5%A0%82%E7%AC%94%E8%AE%B0/weixinobU7Vjl5iHp–r2czX3tFS4CESpI%281%29/665fa5d287cb45d498a7712909d5f685/clipboard.png)]

5.2 声明(定义)变量

语法格式:
​ 数据类型 变量名,例如:int age;

要求:

  1. 必须先声明后使用
  2. 变量必须初始化,即需要赋值
  3. 在同一个作用域中变量不能同名
  4. 变量有作用域

5.3 Java的数据类型

​ Java的数据类型分为两大类:

  1. 基本数据类型:8种;
  2. 引用数据类型:类、接口、数组。
5.3.1 基本数据类型
  1. **整型:**byte(1字节=8bit)\short(2字节)\int(4字节)\long(8字节)

    ​ ① byte范围:-128~127

    ​ ② 声明long型变量,必须以“l”或“L”结尾

    ​ ③ 通常定义整型变量时,使用int型

    ​ ④ 整型的常量,默认类型是int型

  2. **浮点型:**float(4字节)\double(8字节)

    ​ ① 浮点型,表示带小数的数值

    ​ ② float表示数值的范围比long还大

    ​ ③ 定义float类型变量时,变量要以“f”或“F”结尾

    ​ ④ 通常定义浮点型变量时,使用double型

    ​ ⑤ 浮点型的常量,默认类型是double型

  3. **字符型:**char(2字节)

    ​ ① 定义char型变量,通常使用一对’’,内部只能写一个字符

    ​ ② 表示方式:1.声明一个字符 2.转义字符 3.直接使用Unicode值来表示字符型常量

    转义字符:
    [外链图片转存失败(img-VZGbYT0u-1566919357333)(C:\Users\Time\AppData\Roaming\Typora\typora-user-images\1566904338678.png)]

  4. **布尔型:**boolean

    ​ ① 只能取两个值之一:true或者false

节)

​ ① 浮点型,表示带小数的数值

​ ② float表示数值的范围比long还大

​ ③ 定义float类型变量时,变量要以“f”或“F”结尾

​ ④ 通常定义浮点型变量时,使用double型

​ ⑤ 浮点型的常量,默认类型是double型

  1. **字符型:**char(2字节)

    ​ ① 定义char型变量,通常使用一对’’,内部只能写一个字符

    ​ ② 表示方式:1.声明一个字符 2.转义字符 3.直接使用Unicode值来表示字符型常量

    转义字符:
    [外链图片转存中…(img-VZGbYT0u-1566919357333)]

  2. **布尔型:**boolean

    ​ ① 只能取两个值之一:true或者false

    ​ ②常常在条件判断、循环结构中使用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值