java语言基础
标识符:
字母数字下划线美元符号
数字不能开头
大小写敏感
关键字不能用作用户自定标识符
java未使用但保留的:goto const
严格说 true与false不是关键字,是布尔类型的值
命名习惯:
望文生义
推荐规则
包名:小写
如:com.oraclesdp
类名:每个单词首字母大写
如:HelloWorld
接口:每个单词首字母大写
如:HelloInterface
变量/方法:一个单词小写,多个单词第一个小写,后面每个单词首字母大写
如:score showUserInfo
常量:每个单词大写,多个单词之间下划线连接
REQUEST_CODE
8种基本数据类型:
整数:byte short int long
浮点数:float double
布尔:boolean
字符:char
byte 1字节
-128-----127
-2^7----2^7-1
short 2字节
-32768----32767
-2^15----2^15-1
int 4字节
long 8字节
float 4字节
double 8字节
整数默认为int,浮点数默认为double
boolean 1字节
字面值 true false
char 2字节
char a='A';
unicode
char a='u0041';
char a=65;
转义字符 ' ' ' ' ' '
类型转换
强制类型转换
自动类型提升
自动转换为表示数范围最大的那个
局部变量
定义在方法内部的变量
先赋值,再使用
作用域:离它最近的外层大括号内
{}语句块,隔离作用域,内访问外,外不能访问内
同一个作用域范围内的变量不能重名
表达式
运算符
异或 相同为0,不同为1
短路与,短路或
短路与可以参与位运算吗?(不可以)
又睡着了。。。(中午没睡,sorry!)
待整理。。。
byte a=1;
byte b=1;
byte c=a+b;//错误,这里的点在于a与b提升为int,给byte c赋值的时候不行
byte c=1+1;//对