1 static关键字
1.1 static修饰静态成员方法用途
特征:
1. 摆脱类对象,效率高,节约内存空间,提高开发效率
2. 类内成员变量和成员方法都不可以使用,但是不影响使用外来数据
3. 静态成员方法通常用于工具类的封装使用
Arrays数组工具类:
sort 排序方法
binarySearch 二分法
toString 数组内容字符串展示返回值
import java.util.Arrays
class MyArrays {
public static void reverse(int[] arr) {
for (int i = 0; i < arr.length / 2; i++) {
int temp = arr[i];
arr[i] = arr[arr.length - 1 - i];
arr[arr.length - 1 - i] = temp;
}
}
}
public class Demo1 {
public static void main(String[] args) {
int[] = {1,3,5,7,9,2,4,6,8,10};
MyArrays.reverse(arr);
System.out.println(Arrays.toString(arr));
}
}
1.2 static修饰静态代码块
特征:
1. static修饰的静态代码块,不能使用this关键字,不能使用类内的费静态成员方法
2. static修饰的静态代码块,可以使用类内的其它静态成员
3. static修饰的静态代码块中,定义的变量都是局部变量,静态代码块。首先是一个代码块,
拥有代码块的特征,其次是通过static修饰之后,可以随着类文件的加载直接运行,有且只运
行一次
static {
int num = 10;
num = 20;
}
2. 接口
2.1 Java中使用接口
特征:
interface 接口名 {
成员变量
成员方法
}
类【遵从】接口
implements
class 类名 implements 接口 {
}
2.2 接口使用总结
1. 接口中的
成员变量缺省属性 public static final
成员方法缺省属性 public abstract
2. 一个非abstract类遵从interface接口,需要强制完成接口所有缺省属性为public abstract的成员方法
3. 接口和接口之间,允许使用extends关键字继承,并且允许一个接口,继承多个接口
interface A extends B,C
4. 接口中可以使用default关键字修饰方法,default方法拥有方法体,可以认为是非强制实现方法,
不要求遵从接口的非abstract强制实现,JDK1.8新特征
3.多态
3.1 定义
多态:
父类的引用指向子类的对象
或者说接口的引用指向遵从接口的类对象
这就是 多态
3.2 作用
1. 拓宽方法的参数范围
例如:
方法参数为Animal类型
可以传入Animal类型本身,或者去子类对象都可以
方法参数为USB接口类型
只要是直接或者间接遵从USB接口的类对象可以作为方法的参数传入
2. 拓宽方法的返回值范围
3. 简化代码开发,提高开发效率,整合数据类型