Java 基础标识符
标识符: 程序员为自己定义的类,方法或者变量等起的名称。
标识符由大写字母,数字,下划线(_)和美元符号组成,但不能以数字开头。
Java 语言中严格区分大小写。
包名: 使用小写字母。
类名和接口名: 通常定义为由具有含义的单词组成,所有单词的首字母大写。
方法名: 通常也是由具有含义的单词组成,第一个单词首字母小写,其他单词的首字母都大写。
变量名: 成员变量和方法相同,局部变量全部使用小写。
常量名: 全部使用大写, 最后已用下划线分割单词
关键字:
1.访问修饰符关键字。
public: 所修饰的类,方法和变量是公共的, 其他类可以访问该关键字修饰的类,方法或变量。
protected: 用于修饰方法和变量,这些方法和变量可以被同一包中的类或者子类进行访问。
private: 同样修饰方法和变量,方法和变量只有能由所在类进行访问。
2.类,方法和变量修饰符关键字。
class: 告诉系统后面的的单词是一个类名,从而顶一类名。
interface: 告诉系统后面的单词是一个接口名,从而定义一个接口。
implements: 让类实现接口。
extends: 用于继承 。
abstract: 抽象修饰符。
new: 实例化对象。
3.流程控制关键字
流程控制语句包括 if-else switch-case-default , for do-while, break, continue
ruturn instanceof 关键字,用于判断对象是否是类或者接口的实例。
4.异常处理关键字
异常处理的基本结构是 try-catch-finally, 这三个单词都是关键字,异常处理还包括
throw 和throws 这两个关键字。assert 关键字用于断言操作中,也算是异常处理。
5.包控制关键字
包控制关键字只有两个, 分别是import 和package,inport 关键字用于将包或者类
导入到程序中; pachage 关键字用于定义包,并将类定义到这个包中。
6.数据类关键字
8 种基本数据类型,布尔(boolean),字符型(char), 字符型(byte)外
数值型,分为 short int long , flort double.
7.特殊类型和方法关键字
super 关键字用于引用父类, this 关键字用于应用当前类对象。
void 关键字用于定义一般方法,该方法没有任何返回值。
8.没有使用的关键字。
在关键字家族中有两个另类 , const 和 goto 在前面知道关键字是系统
中使用的单词,但是这两个类虽然是关键字,但是系统中并没有使用它们。
所有的关键字都是小写的,如果采用了大写肯定不是关键字。
注释:
单行注释:(//)
多行注释: (/**/)
文档注释(/** */)
整数类型:
整数类型根据占用内存空间位数的不同可以分为4种 分别是:
byte(字节型) 位数 8 取值范围 -2(7)~2(7) -1
short(短整) 位数 16 取值范围 -2(15)~2(15) -1
int (整型) 位数 32 取值范围 -2(31)~2(31) -1
long(长整) 位数 34 取值范围 -2(63)~2(63) -1
浮点类型:
浮点类型分为
单精度浮点类型: 位数: 32 取值范围 1.4e-45~ 3.4e+38
双精度浮点类型: 位数: 64 取值范围 4.9e-325~ 1.7e+308
默认是双精度浮点类型
当使用单精度浮点类型时,必须在数值后面跟上 F 或 f
在双精度 浮点类型中,可以使用D 或 d 为后缀。
字符类型用于存储字符 的数据类型。
可以直接定义,也可以使用Unicode 编码进行定义。
Java 中的部分转译符
\' 单引号 \“ 双引号 \\ 斜杠 \r 回车
\n 换行 \f 换页 \t 跳格 \b 退格
数据类型转换
Java 是强数据类语言。
自动类型转换:
自动数据类型转换,数据类型要兼容外,前面的数据类型的位数要低于
后面的数据类型。
位数低的可以转化为位数高的。
强制类型转换
可以从低位转为高位 前提条件 转换的数据类型必须兼容,强制类型转换
是有固定语法的。(type) value
public class QingZhiZhuanHuan{
public static void main(String[] args) {
int i1= 123; // 定义一个int 类型
byte b=(byte)i1; // 强制类型转换为 byte
System.out.printIn("int 强制类型转换byte 后值等于" + b)
}
}
从高像低转换,会丢失数据。 byte 范围 的最大值是 127.
浮点数强制转换为整数时 ,这种情况下也会丢失小部分数据。
隐含强制类型转换
整数的默认类型是 int
byte b = 123;
在这 段代码中,123 这个数据的类型是 int 类型,而定义的b 这个变量是 byte 类型,由Java 系统自动完成。
运算符合表达式
算数运算符就是用于计算的运算符 包括 加(+),减(-),乘(*),除(/) 运算求余(%)
自增自减运算
自增自减运算符可以算是一种特殊的运算符,自增运算符表示该操作数递增加1,
自减运算符表示该操作数递增减1;
public class ZiZENGJian { public static void main(String[] args){ int a = 3; int b = ++a; int c = 3; int d=--c; System.out.printIn("进行自增运算后的值等于"+b); System.out.printIn("进行自增运算后的值等于"+d); } } }
关系运算符
关系运算符用于尖酸两个操作数之间的关系,其结果是布尔类型。
关系运算符等于 (===),不等于(!=),大于(>),大于等于(>=)
小于(<) 和小于等于(<=)
位运算符
与(&) :如果对应位都是1, 则结果为1,否则为0;
或(|) : 如果对应位都是0, 则结果为0,否则为1.
异或(^) 如果对应值都相同,则结果为0,否则为1。
非(~):: 将操作数的每一个按位取反。
位移运算符
左移运算符
左移运算符 用于将第一个操作数的比特位向左移动第二个操作数,左边空缺的用0位来补充。
右移运算符
左移运算符 用于将第一个操作数的比特位向右移动第二个操作数指定的位数,在二进制中首位是用来表示正负的, 0 表示正,1表示副。
无符号右移运算
无符号右移和右移运算符的规则是一样的,只是填充时,不管是正数还是负数,都使用0来填充。
逻辑运算符
逻辑运算符是用对于生产布尔类型的数值的表达式进行计算,结果为一个布尔类型,逻辑运算符可以分为两大类,一个是短路和非短路。
非短路逻辑运算符
非短路逻辑运算符包括(&),或 (|) 和非(!)。逻辑运算符表示当运算两边的操作数都为true 时,结果为true, 否则为 false。
短路逻辑运算符
当两个操作都为true 时,结果为true 要是第一个操作为false 时,其结果必定是 false,没有必要判断第二个。
三元运算符
Java 中有一个特殊的三元运算符,支持条件表达式,当需要条件判断时可以用来替代
if-else 语句。 expression ? statement : statement2
最高优先级
() [] .
++ -- ~ !
* / %
+ -
>> >>> <<
> >= < <=
== !=
&
^
|
&&
||
? :
= += -= *=
最低优先级