-------android培训、java培训、期待与您交流! ----------
01.关键字(被java语言赋予特殊含义的单词,关键字中所有字母都是小写)
数据类型: class:类 interface接口 byte:字节 short:短整型 int:整型 long:长整型
float:浮点数 double:双浮点数 char:字符型 boolean:布尔型 void:无返回值
数据类型值: true:成立 false:不成立 null:空
流程控制: if:如果 else:或者 switch:选择 case:选项 default::默认 while:当..时
do:做 for:为 break:停止 continue:继续 return:返回
访问权限修饰符:private:私有的 protected:受保护的 public:公有的
定义类、函数、变量修饰符:abstract:抽象的 final:不变的 static:静态的 synchronized:线程同步
定义类与类之间关系的关键字:extends:继承 implements:实现
定义建立实例及引用实例,判断实例:new:新建 this:本类 super:父类 instanceof:实例运算
异常处理: try:尝试 catch:处理 finally:一定执行 throw:方法体内抛出 throws方法体上抛出
包关键字:package:包 import:导入
其它:native:本地方法 strictfp:严格 transient:短暂 volatile:不稳定 assert:断言
02.标识符
1.标识符
(1)在程序中自定义的一些名称。
(2)由26个英文字母大小写,数字,0~9和符号_与$组成。
(3)定义合法标识符规则:
数字不可以开头。
不可以使用关键字.
(4)java中严格区分大小写。
(5)为提高阅读性,起名字尽量有意义。
2.java中的名称规范:
(1)包名:多单词组成时所有字母都小写。如:xxxyyyzzz
(2)类名,接口名:多单词组成时,所有单词的首字母大写。如:XxxYyyZzz
(3)变量名和函数名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写。如:xxxYyyZzz
(4)常量名:所有字母都大写,多单词时每个单词用下划线分开.如:XXX_YYY_ZZZ
03.常量
1.常量表示不能改变的数值。
2.java中常量的分类:
(1)整数常量:所有整数。
(2)小数常量:所有小数。
(3)布尔型常量:只有两个数值,true和false.
(4)字符常用量:将一个数字、字母或符号用单引号标识。如:'4','a','+'。
(5)字符串常量:将一个或多个字符用双引号标识。
(6)null常量:只有一个数值null.
3.对于整数:java有四种表现形式
(1)二进制:0或1,满2进1。
(2)十进制:0~9,满10进1。如:23
(3)八进制:0~7,满8进1。用0开头表示。如:023
(4)十六进制:0~9,A~F,满16进1。用0x开头表示。如:0x4a2c
04.进制
1.进制的特点
(1)二进制:早期由电信号开关演变而来,任何数据在计算机中都以二进制形式存在。
(2)八进制:将二进制中的三位用一位表示,最大值7。
(3)十六进制:将二进制中的四位表示一位,最大值15。
规律:
进制越大,表现形式起短。
2.进制的转换
(1)十进制--->二进制
原理:对十进制数进行除2运算。
示例:算6的二进制:6/2(余0),商3/2(余1),(商1)。倒着写便是6的二进制了,即110。
用函数在控制台输出6的二进制:System.out.println(Integer.toBinaryString(6));
(2)二进制--->十进制
原理:二进制乘以2的过程。
示例:算110的十进制:0*(2的0次幂)+1*(2的1次幂)+1*(2的2次幂)=6
11111111=255,八位是一字节,最大值是255。
(3)二进制--->八进制
如:算001011010的八进制:001(1)-011(3)-010(2)-->132
(4)十进制--->十六进制
如:算90的16进制:90-->01011010-->0101(5)-1010(A)-->0x5A
(5)负数的二进制:
原理:相反数的二进制取反后加1。
示例:算-6的二进制:
0000-0000 0000-0000 0000-0000 0000-0110(6的二进制)
1111-1111 1111-1111 1111-1111 1111-1001(取反)
0000-0000 0000-0000 0000-0000 0000-0001(+1)
-------------------------------------------
1111-1111 1111-1111 1111-1111 1111-1010 = -6
函数验证:System.out.println(Integer.toBinaryString(-6));
结论:负数的二进制最高位都是1。
05.变量
1.变量:内存中的一个存储区域,该区域有自己的名称和类型,该区域的数据可在同一类型范围内不断变化。
2.变量的作用:可将不确定的数据进行存储。用来不断地存放同一类型的常量,并可重复使用。
3.变量的定义格式:
数据类型 变量名 = 初始化值
如:int x = 10;
4.理解:变量就如同数学中的未知数。
5.使用变量注意:
变量的作用域(在一对{}之间有效)
初始化值
6.java是强类型语言,对每一种数据都定义了明确的具体数据类型,在内存中分配了不同大小的内存空间。
(1)数据类型
|--基本数据类型
|--数值型
|--整数型(byte,short,int,long)
|--浮点型(float,double)
|--字符型(char)
|--布尔型(boolean)
|--引用数据类型
|--类(class)
|--接口(interface)
|--数组([])
(2)注:
整数默认类型:int,小数默认类型:double.
取值:
byte:-128~127
short:-32768~32767
char:0~65535
06.类型转换
1.自动类型转换也叫隐式类型转换
强制类型转换也中显式类型转换
2.表达式的数据类型自动提升
所有的byte型,short型和char型值将被提升到int型
如果一个操作数是long型,计算结果就是long型。
如果一个操作数是float型,计算结果就是float型。
如果一个操作数是double型,计算结果就是double型。
07.运算符
1.转义字符,通过\来转变后面字母或者字符的含义。
\n:换行
\b:退格,相当于backspace键。
\r:按下回车键。windows中,回车符是\r\n.
\t:制表符,相当于tab键。
\":双引号
\\:斜线
\':单引号
注:windows中,回车符由两个字符表示:\r\n.
2.赋值运算符:
(1)符号:= += -= *= /= %=
(2)示例:
int x = 3;//把右边赋给左边
x += 4;//把左右两边的和赋给左边==>x=x+4
(3)s=s+2和s+=2的区别
s=s+2 ;//编译失败,因为s会被提升为int类型,运算后结果还是int型。无法赋值给左边的short 类型。
s+=2;//编译通过,因为+=运算符在给s赋值时,自运完成了强制转换操作。
3.比较运算符:
符号:==,!=,<,>,<=,>=,instanceof
== 相等于 4==3 -> false
!= 不等于 4!=3 -> true
< 小于 4<3 -> false
> 大于 4>3 -> true
<= 小于等于4<=3 -> false
>= 大于等于4>=3 -> true
instanceof 检查是否是类的对象 “Hello” instanceof String -> ture
注意:比较运算符结果都是boolean型。
4.逻辑运算符:
& 与 false&true -> false 无论左边是true是false,右边都运算
| 或 false|true -> true 两边都参与运算
^ 异或 false^true -> true 当两边都是true时,结果为false
! 非 !true -> false
&& 与短路 false&&true -> false 当左边为false时,右边不运算。
|| 非短路 false||true -> true当两边都为true,右边不运算。
注:逻辑运算符用于连接boolean类型的表达式。
5.位运算符:
<< 左移 3 << 2 = 12 --> 3*2*2=12//就是乘以2的移动的位数次幂
>> 右移 3 >> 1 = 1 -->3/(2的1次幂)=1//就是除以2的移动的位数次幂
>>> 无符号右移 3>>>1 = 1 -->3/2=1//无论最高位是什么,右移后,都用0补空位
& 与运算 6 & 3 = 2 就是2进制的真假运算。
| 或运算 6 | 3 = 7
^ 异或 6 ^ 3 = 5
~ 反码 ~6 = -7
注:7^4^4=7;
一个数异或同一个数两次,结果还是那个数,
此方法可用来加密和解密数据。
6.三元运算符:
(1)格式:(条件表达式 )? 表达式1 :表达式2
若条件为true,运算结果为表达式1;
若条件为false,结果为表达式2;
(2)示例:
int x=1,y;
y=(x>1)?100:200;
08.注释
1.注释的三种方式
(1)//用于单行注释
(2)/*
用于多行注释
*/
(3)文档注释
/**
* java特有的注释方式,用于多行注释,可被javadoc工具解析
*/
2.注释的两个作用:
(1)注释文档,提高代码的阅读性。
(2)调试程序,将错误语句注释掉。
3.注释范例
/**
*这是我的HelloWorld程序
*@author fengpei
*/
class Demo
{
/*
这是主函数,是程序的入口
它的出现可以保证程序的独立运行
*/
public static void main(String[] args)
{
//这是输出语句用于将括号内的数据打印到控制台。
System.out.println("Hello World");
}
}
------- android培训、java培训、期待与您交流! ----------