Java分类、特性及原理
Java的三大分类:
JavaSE——Java语言的标准版,用于桌面应用开发,是其他两个版本的基础
JavaME——Java语言的小型版,用于嵌入式电子设备或者小型移动设备
JavaEE——Java语言的企业版,用于Web方向的网站开发
Java的主要特性:面向对象、安全性、多线程(同时做多件事情)、简单易用、开源、跨平台(程序可以在任意操作系统上运行)
Java跨平台的原理:
① Java语言的跨平台是通过虚拟机实现的
② Java语言不是直接运行在操作系统里面的,而是运行在虚拟机中的
③ 针对于不同的操作系统,安装不同的虚拟机就可以了
JDK(Java Development kit):java开发工具包。包括:
① JVM(Java Virtual Machine)虚拟机:Java程序运行的地方
② 核心类库:Java已经写好的东西,我们可以直接用
③ 开发工具:javac(编译工具)、java(运行工具)、jdb(调试工具)、jhat(内存分析工具)…
JRE(Java Runtime Environment):Java运行环境。包括:JVM、核心类库、运行工具
JDK、JRE、JVM三者的包含关系:JDK包含JRE,JRE包含JVM
注释
单行注释:
//注释信息
多行注释:
/* 注释信息 */
文档注释:
/** 注释信息 */
关键字
关键字:被Java赋予了特定含义的英文单词
特点:
① 关键字的字母全部小写
② 常用的代码编辑器,针对关键字有特殊的颜色标记,非常直观
字面量
字面量类型 | 说明 | 举例 |
---|---|---|
整数类型 | 不带小数点的数字 | 666,-88 |
小数类型 | 带小数点的数字 | 13.14,-5.21 |
字符串类型 | 用双引号括起来的内容 | “123”,“” |
字符类型 | 用单引号括起来的,内容有且只能有一个 | ‘我’,‘0’ |
布尔类型 | 布尔值,表示真假 | true,false |
空类型 | 一个特殊的值,空值 | null |
注意:null不能直接打印,如果要打印null,那么只能用字符串的形式进行打印
特殊字符'\t'
:在打印的时候,把前面字符串的长度补齐到8,或者8的整数倍。最少补1个空格,最多补8个空格。(常用于字符串的对齐)
变量
定义格式:数据类型 变量名 = 数据值;
计算机中的数据存储
数据分类:Text文本、Image图片、Sound声音
1.Text文本:
数字:
① 二进制:由0和1组成,代码中以0b开头
② 十进制:由0-9组成,前面不加任何前缀
③ 八进制:由0-7组成,代码中以0开头
④ 十六进制:由0-9还有a-f组成,代码中以0x开头
字母:查询码表
汉字:查询码表
2.Image图片:
通过每一个像素点中的RGB三原色来存储。可以写成十进制形式(255,255,255),也可以写成十六进制形式(FFFFFF)
① 黑白图
② 灰度图
③ 彩色图
即日常生活中的图片,采用RGB三原色来存储
3.Sound声音:
对声音的波形图进行采样再存储
数据类型
分类:基本数据类型、引用数据类型
基本数据类型:
数据类型 | 关键字 | 取值范围 | 内存占用 |
---|---|---|---|
整数 | byte | -128~127 | 1 |
short | -32768~32767 | 2 | |
int默认 | -231~231-1(10位数) | 4 | |
long | -263~263-1(19位数) | 8 | |
浮点数 | float | 略 | 4 |
double默认 | 略 | 8 | |
字符 | char | 0-65535 | 2 |
布尔 | boolean | true,flase | 1 |
注意:
① 如果要定义long类型的变量,在数据值的后面需要加一个L作为后缀,L可以是大写的,也可以是小写的,但建议大写
② 定义float类型的变量,在数据值的后面需要加一个F作为后缀,F可大写可小写
标识符
命名规则:
① 由数字、字母、下划线和**美元符($)**组成
② 不能以数字开头
③ 不能是关键字
④ 区分大小写
键盘录入
Java帮我们写好一个类叫Scanner,这个类可以接收键盘输入的数字
步骤:
1.导包
import java.util.Scanner; //导包必须出现在类定义的上边
2.创建对象
Scanner sc = new Scanner(System.in) //只有sc是变量名可以变,其他不可以变
3.接收数据
int i = sc.nextInt(); //只有i是变量名可以变,其他不可以变
第一套体系(遇到空格,制表符,回车就停止接收):
nextInt(); //接收整数
nextDouble(); //接