源文件声明规则
源文件格式:
Package 包名;
Import 导入的类;
Public class 类名(与源文件名一致){}
Class 其他的类()
Java包
包主要是用来对类和接口进行分类
Import 导入语句 导入类,接口
在Java中,导入的类必须是完整路径名字。编译器能找到源代码的类
Import.java.util.*;导入util包中所有的类
Import 包名.类名;导入具体的类。
变量用在内存中存储值;
内存管理根据变量的类型为变量分配存储空间,分配的空间根据变量类型判断
Java的两大数据类型:
内置数据类型
Java有八种基本类型
六种数字类型:四个整形,两个浮点型;
一种字符型,一种布尔型。
四个整形:
byte: 数据类型是8位,有+-符号整数 最小值-128 -2^7 最大值127 -2^7-1 默认值是0
short: 16位 有正负符号的整数, 最小值-32768 -2^15 最大值32768 -2^15-1
int : 32位, 最小值-21亿 -2^31 最大值-21亿 -2^31-1
long: 64位 最小值 -2^63 最大值 -2^63-1,long一般使用在需求大的整数上
默认值:0L;因为long的后缀是l 或L,用大写。
两个浮点型:float,double
float:单精度,32位 符合IEEE754标准的浮点数
默认值是:0.0f;
double:双精度,64位 符合IEEE754标准的浮点数
默认值是:0.0d;
一个布尔型
boolean:一个判断信息
只有两个值:true,false;
默认值是false;
一个字符型
char:单一的16位unicode字符;
最小值:0;
最大值:65535;
存储的任何字符。
‘字’,’符’,’’A,’a’;每一个字符对应一个unicode的值
最大值和最小值以E科学计数法形式输出,结尾是E+数字
表示E之前的数字要乘10的多少次方
比如:float的位数 32
最小值1.4E-45 1.4*10^-45
最大值3.4028235E38 3.4028235*10^38
从小到大 byte short int long
Float double
特殊基本类型:void(无类型) 对应的包装类java.lang.Void,无法直接进行操作
引用类型
引用类型指向一个对象,指向对象的变量叫引用变量
比如:Employee employee = new Employee();
Employee:引用变量,引用变量
对象,数组等都是引用数据类型
默认值:null;空
创建类,通过实例化的对象都是引用类型。
对象存储在内存的堆中
Java常量
常量在程序运行中是不能修改的。用final关键字来修饰变量是常量;声明完常量的变量后赋初始值。
比如:final int ID = 10;
常量可以用小写,但是为了与变量区分,常量名用大写表示
字符串:String s =”字符串常量”;这种声明方式就是字符串常量
与String str = new String(“字符串”);不同
类型转换:自动类型转换,强制类型转换
数据类型,在程序执行过程中会发生类型转换。
自动类型转换:从低类型转换成高类型
高类型 = 低类型 value;
低-->高类型
Byte,short,int,long-float->double 的顺序
Byte b =1;
Short s =b;
强制类型转换:从高类型强制转换成低类型,强制转
低类型 = (强制低类型)value;
注意:
Java方法
System.out.println(“”);
System是系统类,out 是系统类中的输出对象,println() 输出对象中控制台打印字符串的方法。
调用系统类的输出对象out 中println()方法;
主方法:
Public static void main(String[] args){
//代码
}
什么是方法?
代码语句的集合,组合在一起执行一个功能
方法的特点:
方法的命名:
首字母小写,后面的单词首字母大写,不要使用连接符(_)
JUnit测试工具语法中有_的作用;
方法定义的语法:
[访问修饰符] [非访问修饰符] 返回值类型 方法名(参数类型 参数名){
方法体 [return 返回值;]
}
[] :表示可不写
修饰符:可选的,告诉编译器如何调用该方法,修饰符定义了该方法的访问类型。
返回值类型:方法可能会有返回值,
有返回值,定义返回值类型。
没有返回值,使用关键字void,void表示无返回值。
方法名:方法实际的名称,通过方法名调用该方法。
参数:形参,占位符。传递值给方法中的参数
方法体:方法的实现过程。
方法的调用方式:
根据是否有返回值来判断
参数传值
参数列表:类型,个数,顺序。
方法的重载
符合方法重载条件:
Java编译器根据方法名和参数列表判断哪个方法被调用。
执行功能类型的,密切相关任务的方法可使用相同的名字。
Java修饰符
分为两类:
修饰符定义类,方法,变量,放在语句的最前端。
访问控制修饰符
使用访问修饰符保护对类,方法,变量的访问。
有四种权限:default,private,public,protected
Default(默认,什么也不写):不使用任何修饰符,在同一包内可见;
Private,私有,在同一类内可访问,不能修饰(外部)类。
Public:公开的,对所有类都可见。
Protected:受保护,对同一包内的类和所有的子类可见。不能修饰外部类
访问修饰符和继承关系:
父类中声明为public的方法,在子类继承此方法必须是public
父类中声明为protected的方法,在子类继承此方法可以是public和protected
子类继承父类的方法,访问修饰符不能比父类更严格
父类设置为private的方法和属性,子类不能被继承
非访问修饰符
Static,final,abstract
不常用的:synchronize 用于线程的
Static修饰符
静态,static修饰的变量和方法,属于类的。可通过类直接调用 。
类名.变量/类名.方法
Static静态变量,用于声明独立与对象的静态变量,类变量;
属于类,无论类创建多少个对象,静态变量只有一份
静态方法:独立与对象的静态方法,属于类的。静态方法中不能使用类中非静态的变量
Final修饰符
Final变量:声明后初始化,只能初始化一次,final变量不能被修改
Final和static一起使用,创建类的常量。
Final方法
防止该方法内容被修改。
类中final方法可以被子类继承,但不能被子类修改(重写)
Public final void mehtod(){ //方法体}
Final类
不能被继承,没有类可以继承final类
Java.lang.String
Public final String{}
String 不能被继承