为了监督自己学习进度,特意开了博客记录每天学习的内容,坚持每天都写一点,学习java任重而道远。
-------------------------------------------分隔线--------------------------------------------------------
基本语法
1、大小写敏感:对于 类名,首字母应该大写。对于 方法名,首字母小写。2、 项目名为小写, 包名为小写。
3、 源文件名必须与 类名相同,后缀为.java。
4、java程序由public static void main(String []args)方法开始执行;关于String []args 是一个数组,args[0]是第一个传入参数,arg[2,3,4,……]依次类推。(还有一种等价写法 String...args为可变参数形式,可变参数形式?)
标识符
1、 类名,变量名及方法名称为标识符。2、所有标识符都应该以 字母,美元符$和下划线开始。
3、首字符之后也必须是 字母,美元符和下划线组合。
4、标识符大小写敏感。
访问控制修饰符
作用:保护对类,变量,方法和构造函数的访问。
dafault:同一包内可见,不使用任何修饰符。
private:在同一类可见
protected:对同一包内的类和所以子类可见。
public:对所以类可见。
变量
局部变量:在方法、构造方法或者语句块中定义的变量称为局部变量,变量声明和初始化都是在方法中,方法结束后,变量就会自动销毁。类变量(静态变量):声明在类中,方法体之外,但必须声明为static类型。
成员变量(非静态变量):定义在类中,方法体之外的变量。创建对象的时候实例化,可以被类中方法和特定类的语句块访问。
八种基本类型 (1 byte = 8 bit)
boolean 1个字节byte (字节类型)1个字节
char (字符类型)2个字节
short (短整形)2个字节
int (整形)4个字节
long (长整形)8个字节
float(浮点型)4个字节
double(双精度类型)8个字节
源文件声明规则
1、一个源文件中只能有一个public类。2、一个源文件可以有多个非public类。
3、源文件的名称应该和public类中的类名保持一致。
4、如果一个类定义在某个包中,那么package语句应该放在源文件的首行。
5、源文件包含Import语句,应该放在package语句和类定义之间;若没有package语句,那么import语句应该放在源文件的最前面。(???)
Java常量
1、常量是在程序运行时不能被修改的。2、使用final关键字来定义,如 final double PI=3.1415926。
3、常量通常使用大写字母。
数据类型转换
从 低到-------------------------------------- 高级byte,short,char->int->long->float->double
数据类型转换必须满足:
1、不能对 boolean类型进行类型转换。
2、不能把对象类型转换成不相关类的对象。
3、把容量 大的类型转换成容量 小的类型必须使用 强制类型转换,如
int x = (int)34.89;
long y = (long)59.98F;
int z = (int)1999L;
x,y,z输出的结果是34,59,1999。
4、转换过程如果超出类型的数值范围,会导致溢出或者损失精度。
int i =128;
byte b = (byte) i;
//byte的范围是-128-127,转换时会出现溢出。
5、浮点数到整数的转换是通过舍弃小数得到,而不是四舍五入。int(23.7)==23
6、当把级别低的变量赋值给级别高的变量时,系统会自动完成数据类型转换,如:
int x = 50;
float y;
x=y;
y的值输出为50.0。
java数组
声明方式:数组的元素类型 数组名[] 或者 数组的元素类型 []数组名
例如:
float boy[];
char cat[][];
为数组分配元素:数组名 = new 数组元素的类型[数组元素的个数];
例如:boy = new float [4];//分配后,boy数组获得4个存放float类型数据的变量
声明和创建数组可以同时进行:float boy = new float [4];
对数组元素赋值:boy[1]=10;boy[2]=23.908f.....
或者可以一次性初始化数组:int boy[]={1,2,3,4};
求boy数组的长度 boy.length 得出为4。