一、Java语言严格区分大小写
书写规范如下:
包名:多单词组成时全小写。(com.xh.case)
类名和接口名:每个首字母单词均大写。(MyTest)
变量名和函数名:一个单词均小写,多个单词是第一个单词首字母小写,后面的所有单词首字母大写。(MyFunction)
常量名:均以大写字母表示,多个单词用下划线分开。(My_TAG)
二、基本概念
a)关键字
关键字:被java赋予特殊含义的一些单词,全部是小写。如类 的关键字class。
Java中一共有51个关键字:
数据类型关键字:byte,int,short,long,float,double,char,boolean
修饰符关键字:public,void,static,final,protected,private, strictfp,abstract,transient,synchronized,
volatile,native
流程控制关键字:if,else,do,while,for,switch,case,default,break,continue,return,try,
catch,finally
动作相关关键字:package,import,throw,throws,extends,Implements,this,super,instanceof,new
其他关键字:goto,const(java语言中没用但保留了),true ,false,null
b)标识符
标识符:由开发人员根据需要给包名,类名,接口名,方法名, 函数名,变量名,常量名自定义的一些名称。
标识符命名规则:见名知意,区分大小写,不能用关键字命名。由26个英文字母,0-9数字,和_,$符号自由
组合而成。
合法标识符:indentifier,$username
非法标识符:class(关键字不能作标识符)
98.3(数字不能作标识符)
you@me(只能用_和$符号,其他的错)
Hello jim(不能有空格)
c)注释
Java中有三种注释
1.//单行注释
2./* ...*/多行注释
3./**....*/文档注释(Java独有)
d)常量
普通常量:常见的数字,如80,90
字符型常量:用单引号括起来的一个字符或多个字符。
字符串常量:用双引号括起来的零个或多个字符。
字符常量和字符串常量区别:
‘x’是字符常量
“x”是字符串常量
字符常量用char定义,字符串常量用来给String类对象初始化。
char ch=’x’;
String str=”x”;
普通常量和符号常量的理解:
普通常量如80,它是不变的,但是可以修改成其他常量如90,如果程序要求该常量不能被修改,就把80定义成符号常量。定义格式如下:
访问权限修饰符+final+数据类型+符号常量名=初值,final是关键字。符号常量名必须大写便于区分变量名。
public final int PI=80;PI是符号常量名。
e)变量
变量:在程序中可以变的量,代表保存数据内存单元。
变量三要点:数据类型,名字,值。
使用原则:先定义后使用,使内存与变量建立联系。
语法规则:变量类型 标识符 值
变量的值可以是初始值,默认值,改变值。
举例说明:
int a=5; //初始值5
a=6; //改变值6,a从5变为6
int b; //系统默认值
变量又可以分为局部变量和全局变量。
局部变量:写在成员方法或代码块内的量,必须先赋初值, 才能使用。
作用范围:从定义位置开始到第一个右花括号结束。
void f1(int x) {
int y = x;
boolean b = true;
if(b) {
int m = 34 ;
System.out.println("b="+b);//b=true
System.out.println("m="+m);//m=34
}
System.out.println("m="+m); //错因:m是局部变量只能再
方法体中使用
System.out.println(“b=”+b);
全局变量又叫成员变量,既不在方法中也不在程序块内 中,全局变量一般是接到类下开始写的,例如:
public class Connect {
public int b=2; //全局变量
public float c;
public static void main(String[] args) {
int var1; //局部变量
int a = 1; //局部变量
int c=3;
int var2;
var1=128;
var2=127;
System.out.println("var1="+a);
System.out.println("var2=");
}
}
}
成员变量可以不赋初值。如int a;
f)运算符
算术运算符: +,-,*,/,%,++,--
关系运算符: >,<,>=,<=,==,!=
布尔逻辑运算符: !,& , | , ^ , &&,||,!
位运算符: &,|,^,~ , >>,<<,>>>
赋值运算符: =
扩展赋值运算符:+=,-=,*=,/=
x+=4;等价于x=x+4;但注意它只有一次运算。
字符串连接运算符: +
用==号来判断两个值是否相等
用!=来判断是否不等
用>、<来判断大于、小于
用>=、<=来判断大于等于,小于等于
关于++,--的使用说明
++和--可以前缀运算也可以后缀运算,要区分不同。
int i=6;
I=++i; //I变为7,i不变为7
I=i++;//I变为6,i变为7
不管前缀后缀,i肯定是要加1。
--同理可以知道。
三目运算符:具有3个操作数,格式如下.
d1?d2:d3
等价于
if(d1) {
d2;
}
else {
d3;
}
三.进制
在java中进制有二进制,八进制,十进制,十六进制。
二进制:一连串的0和1组成,如001011
八进制:以0开头的,如:0123
十进制:我们常见的数字,如21,100
十六进制:以0x或0X开头,如0x123
二进制-->十进制
原理:乘以2的幂,从最右边开始,次方从0开始,最 后全部加起来。
例子: 10010,()中的数字代表次方
0*2(0)+1*2(1)+0*2(2)+0*2(3)+1*2(4)=18
十进制-->二进制
原理:短除法除以2,除到商1为止,将余数倒起连在一起
二进制-->八进制
原理:将二进制数分成三位一组,没有的用0补空位
例子:101000
101为一组,000为一组
101=5,000=0,所以101000=050
二进制-->十六进制
原理:将二进制数分成四位一组,没有的用0补空位
例子:10001100
1000为一组,1100为一组
1000=8,1100=12,所以10001100=0x8C
四.数据类型
数据类型 (由简单数据类型和引用类型组成)
引用类型是:类,接口,数组
(1个字节占8位二进制数)
Byte 占1个字节,取值范围 -128到127
Boolean 占1个字节 取值范围 true和false
Short 占2个字节,取值范围 -32768到32767
Char 占2个字节,取值范围 0到2的16次方
Int 占4个字节,取值范围-2的31次方到2的31次方-1
Float 占4个字节,取值范围-3.04E38到3.04E38
Long 占8个字节,取值范围-2的63次方到2的63次方
Double占8个字节,取值范围-1.798E308到1.798E308
整型变量:byte,short,int,long
字节型:byte 长整型:long 短整型:short
字符型:char
浮点型:单精度float,双精度double
布尔型:Boolean
布尔型常量不能转换成其他数据,与其他语言不同,true不代表1,fasle不代表0。
Java语言中默认整型常量为int型
Java语言中默认浮点型为double型
声明float型需在数据后面加f或F,例如float f=3.3f
数据类型转换:小转大自动转,大转小强制转.
数据类型从小到大:byte-short,char-int-long-float-double
类型转换:等号右边的数据类型转换成等号左边的数据
类型
举例说明:
byte a=10; int b=28;
b=a;(a小b大,小转大自动转)
a=(byte)b (b大a小,强制转,在右边加上
左边的类型名)
注意:较长的数据转成较小的数据容易丢失数据
再举例:
byte a=2;
byte b;
b=a+3;
说明:a,b是byte型,而3系统默认int型,a+3时,系统自动将a提升至int型,所以a+3的结果是int型,而b又是byte型,所以这里要强制类型转换。正确写法如下:
byte a=2;
byte b;
b=(byte)(a+3);
考虑数据类型的例子
int a=5320;
a=5320/1000*1000
System.out.println(“a”);
输出结果5000
说明:本应该5320/1000=5.32,但是这是int型的,所以保留整数位,所以5320/1000=5,然后5*1000=5000