数组
声明
//静态初始化
int []array = new int[]{1,2,3,4};
//动态初始化
int []array = new int[4];
遍历
for(int = 0;i<array.length;i++){
sout(array[i]);
}
增强for循环
for(int x : array){
sout(x);
}
冒泡函数
int[] arr = {100,3,40,300,88};
for(int x = 0;x<arr.length-1;x++){
for(int p = 0;p<arr.length-1-x;p++){
int temp = 0;
temp = arr[p];
arr[p] = arr[p+1];
arr[p+1] = temp;
}
}
for(int h : arr){
sout(h);
}
方法
不能嵌套定义 可以嵌套引用
方法重载overload
与修饰符 , 返回值 ,变量名无关
方法名必须相同
参数列表必须不同
(数量不同,顺序不同,类型不同)
抽象类和接口
a. 抽象类可以有构造方法,接口中不能有构造方法。
b. 抽象类中可以有普通成员变量,接口中没有普通成员变量。
c. 抽象类中可以包含非抽象普通方法,接口中的所有方法必须都是抽象的,不能有非抽象的方法。
d. 抽象类中的抽象方法的访问权限可以是 public、protected 和(默认类型,虽然 eclipse 不报错,但也不能用,默认类型子类不能继承),接口中的抽象方法只能是 public 类型的,并且默认即为 public abstract 类型。
e. 抽象类中可以包含静态方法,在 JDK1.8 之前接口中不能不包含静态方法,JDK1.8 以后可以包含。
f. 抽象类和接口中都可以包含静态成员变量,抽象类中的静态成员变量的访问权限可以是任意的,但接口中定义的变量只能是 public static final 类型的,并且默认即为 public static final 类型。
g. 一个类可以实现多个接口,用逗号隔开,但只能继承一个抽象类,接口不可以实现接口,但可以继承接口,并且可以继承多个接口,用逗号隔开。
构造器
也是一种方法 (特殊方法)
所有对象实例都通过构造器
类名 对象名 = new 构造器名();
static
a. static修饰的变量,方法归属于类
可以使用类名.变量/方法获取
b. 需要new当前对象才能调用静态变量/方法
c. 非static方法可以直接使用static属性/方法
d. static不能修饰局部变量
继承
java是单继承 只能继承一个类
super(); //使用父类构造器为子类赋值
访问修饰符
public > protected > default(不写) > private