一、基础语言要素
1.1 标识符:用来给类、对象、方法、变量、接口和自定义数据类型命名的。
组成:
由数字,汉字,字母和下划线(_),美元符号($)或人民币符号(¥)组成。在Java中是区分大小写的,而且还要求首位不能是数字。
例如:
下面的标识符是合法的:
HelloWord,Hello_Word, $HelloWord,_sys_ta,OK,_23b,_3_
下面的标识符是非法的:
#HelloWord,HelloWord
注意:标识符不能使用JAVA语言中的关键字,关键字下方会进行讲解。
使用标识符应该要学会良好的习惯:
▷ 包名:全部使用小写字母组成。
▷ 类和接口名:应以具有含义的单词组成,所有的单词的首字母大写。
▷ 方法名:有具有含义的单词组成,所有的单词首字母都大写。
▷ 变量名:成员变量和方法名相同,局部变量全部使用小写。
▷ 常量名:全部使用大写字母,单词之间用下划线分开。
1.2 关键字:不能作为标识符使用,由系统来使用
访问控制
private protected public
类,方法和变量修饰符
abstract class extends final implements interface native new
static strictfp synchronized transient volatile
程序控制
break continue return do while if else for instanceof switch case default
异常处理
try cathc throw throws
包相关
import package
基本类型
boolean byte char double float int long short null true false
变量引用
super this void
保留字
goto const
相关含义解释
关键字
含义
abstract
表明类或者成员方法具有抽象属性
assert
断言,用来进行程序调试
boolean
基本数据类型之一,布尔类型
break
提前跳出一个块
byte
基本数据类型之一,字节类型
case
用在switch语句之中,表示其中的一个分支
catch
用在异常处理中,用来捕捉异常
char
基本数据类型之一,字符类型
class
声明一个类
const
保留关键字,没有具体含义
continue
回到一个块的开始处
default
默认,例如,用在switch语句中,表明一个默认的分支
do
用在do-while循环结构中
double
基本数据类型之一,双精度浮点数类型
else
用在条件语句中,表明当条件不成立时的分支
enum
枚举
extends
表明一个类型是另一个类型的子类型,这里常见的类型有类和接口
final
用来说明最终属性,表明一个类不能派生出子类,或者成员方法不能被覆盖,或者成员域的值不能被改变,用来定义常量
finally
用于处理异常情况,用来声明一个基本肯定会被执行到的语句块
float
基本数据类型之一,单精度浮点数类型
for
一种循环结构的引导词
goto
保留关键字,没有具体含义
if
条件语句的引导词
implements
表明一个类实现了给定的接口
import
表明要访问指定的类或包
instanceof
用来测试一个对象是否是指定类型的实例对象
int
基本数据类型之一,整数类型
interface
接口
long
基本数据类型之一,长整数类型
native
用来声明一个方法是由与计算机相关的语言(如C/C++/FORTRAN语言)实现的
new
用来创建新实例对象
package
包
private
一种访问控制方式:私用模式
protected
一种访问控制方式:保护模式
public
一种访问控制方式:共用模式
return
从成员方法中返回数据
short
基本数据类型之一,短整数类型
static
表明具有静态属性
strictfp
用来声明FP_strict(单精度或双精度浮点数)表达式遵循IEEE 754算术规范
super
表明当前对象的父类型的引用或者父类型的构造方法
switch
分支语句结构的引导词
synchronized
表明一段代码需要同步执行
this
指向当前实例对象的引用
throw
抛出一个异常
throws
声明在当前定义的成员方法中所有需要抛出的异常
transient
声明不用序列化的成员域
try
尝试一个可能抛出异常的程序块
void
声明当前成员方法没有返回值
volatile
表明两个或者多个变量必须同步地发生变化
while
用在循环结构中
1.3 注释:们更好的理解代码的含义。
单行注释: //为了可以让我
多行注释:/**/
文档注释:/***/
二、基本数据类型
2.1 常量和变量:
2.1.1 常量表示不能改变的值:
如:final String USERNAME = "LINZHENHUA";
2.1.2 变量是能够改变的值
如 :int x =5
Ø作用域(Scope)决定了变量可使用的范围
•全局变量(Global variables):变量可以在整个类中被访问;
•局部变量( Local variables ):变量只能在定义其的代码段中被访问。
Ø作用域规则:在一个代码段中定义的变量只能在该代码段或者该代码段的子代码段中可见。
Ø使用局部变量比使用全局变量更安全。
2.2 整数类型
分为:
类型
位数
取值范围
字节型(byte)
8
-2^7 ~ 2^7 - 1
短整型(short)
16
-2^15 ~ 2^15 - 1
整形(int)
32
-2^31 ~ 2^31 - 1
长整型(long)
54
-2^63 ~ 2^63 - 1
2.3 浮点类型
类型
位数
取值范围
单精度浮点类型
32
3.4e+38 ~ 1.4e-45
双精度浮点类型
64
1.7e+308~ 4.9e-324
2.4 字符型(char)
任意单个字符
2.5 布尔类型 (boolean)
取值为:true/false
三、数据类型的转换:满足以下规则
不能对boolean类型进行类型转换。
不能把对象类型转换成不相关类的对象。
在把容量大的类型转换为容量小的类型时必须使用强制类型转换
3.1 自动类型转换: 转换从低级到高级
列如:
定义一个short类型变量: short s = 3;
short自动转换为int类型:int i = s;
定义一个float类型变量:float f = 1.0f;
float自动转换为double:double d = f ;
......
3.2 强制类型转换:把位数高的转换为位数低的
如:
int x = 123;//定义一个int类型
byte b = (byte)x;//强制把int类型转换为byte类型。
四、运算符和表达式
4.1 算术运算符:相当于计算机运算符的加(+),减(-),乘(*),除(/)等数学的基本运算.。
列子:
4.2 自增自减运算符:
是一种特殊的运算符,自增表示操作数值递增加1,自减操作数字递减1;
列如:
4.3 关系运算符:计算两个数之间的操作,其产生的结果是布尔类型;
包括:等于(==),不等于(!=),大于(>),大于等于(>=),小于(
列如:
4.4 位运算符:对数据比特位进行操作,只能用于整数类型
操作符描述例子
&
如果相对应位都是1,则结果为1,否则为0
(A&B),得到12,即0000 1100
|
如果相对应位都是0,则结果为0,否则为1
(A | B)得到61,即 0011 1101
^
如果相对应位值相同,则结果为0,否则为1
(A ^ B)得到49,即 0011 0001
〜
按位补运算符翻转操作数的每一位,即0变成1,1变成0。
(〜A)得到-61,即1100 0011
列如:
4.5 逻辑运算符:用于对产生布尔类型数值的表达式进行计算,结果为布尔类型。
操作符描述例子
&&
称为逻辑与运算符。当且仅当两个操作数都为真,条件才为真。
(A && B)为假。
| |
称为逻辑或操作符。如果任何两个操作数任何一个为真,条件为真。
(A | | B)为真。
!
称为逻辑非运算符。用来反转操作数的逻辑状态。如果条件为true,则逻辑非运算符将得到false。
!(A && B)为真
列如:
4.6 三元运算符:该运算符有3个操作数,并且需要判断布尔表达式的值。该运算符的主要是决定哪个值应该赋值给变量。
表达式:
variable x =(expression)?value iftrue:value iffalse
列如:
4.7 运算符的优先级
总结:这一节课主要是学习了基本数据类型,和各种表达式的使用。在实际运用中这些表达式是十分有用的。希望各位在其他时间这里面没有的自行去扩展开来。
微信公众号请关注:
内容来源于网络如有侵权请私信删除