(1):静态static关键字概述:
a . 一旦用了static关键字,那么内容不再属于自己,而是属于类的,所以凡是类的对象,都会共享一份数据
b .一旦使用static 修饰成员方法,那么这就成为了静态方法, 静态方法不属于对象,属于类
如果没有static关键字,那么必须首先创建对象,然后通过对象才能使用它
如果有static关键字,那么不需要创建直接使用它;
无论是成员变量还是成员方法,如果有了static,都推荐直接使用类名称进行调用
成员变量:类名称 .静态变量
静态方法:类名称.静态方法()
c.成员方法可以访问成员变量
成员方法可以访问静态变量
静态方法可以访问静态变量
静态不能直接访问非静态
(2):java.util.Arrays 是一个与数组相关的工具类,里面提供了大量静态方法,用来实现数组常见的操作
public static String toString(数组):将参数数组变成字符串(按照默认格式:[元素1,元素2 元素3])
public static void sort(数组):按照默认升序(从小到大)对数组元素进行升序
备注:1如果是数值,那么sort 默认按照升序从小到大,
2.如果是中文,sort 默认按照字母升序
3.如果是自定义的类型,那么这个自定义的类型需要有Comparable 或者Comparator 接口的支持
int[] inArray = {10,20,30};
String inStr = Arrays.toString(inArray);
System.out.println(inStr);
int[] array1 = {10,40,30};
Arrays.sort(array1);
System.out.println(Arrays.toString(array1));
String[] array2 = {“aaa” ,”dddd”,”ccc”};
Arrays.sort(array2);
System.out.println(Arrays.toString(array2));
(3):Java.util.Math类是数学相关的工具类,里面提供了大量的静态方法,完成数学相关运算的操作
public static doble abs(doble num ):获取绝对值
public static doble ceil(doble num):向上取整
public static doble floor(doble num ):向下取整
public static doble round(doble num):四舍五入
(4) :继承: 在继承关系当中,方法的名称一样,参数列表也一样.
(1):子类 extends 父类
父类是普通的类,子类是继承的类,继承父类所有的东西
在父子类的继承关系当中,如果成员变量重名,则创建子类对象时,访问有两种:
1.直接通过子类对象访问成员变量:等号左边是谁,就优先用谁,没有则向上找,
2.间接通过成员方法访问成员变量:该方法属于谁,就优先用谁,没有则向上找
(2):局部变量:直接写成员变量
本类中的成员变量:this.成员变量名
父类的成员变量:super.成员变量名
(3):重名:创建的对象是谁,就优先用谁,如果没有则向上找,
无论是成员方法还是成员变量,如果没有都是向上找父类,绝不会向下找子类
(4):子类方法的返回值必须[小于等于]父类的返回值范围
子类方法的权限必须[大于等于]父类方法的权限修饰符
public > protected >(default) > private
default 不是关键字而是留空,什么都不写
(5): 抽象方法:就是加上abstrac 关键字,然后去掉大括号,直接分号结束
抽象类:抽象方法所在的类,必须是抽象类才行,在Class 之前写上abstract即可
如果使用抽象类和抽象方法
1 不能直接创建new 抽象对象
2,必须用一个子类来继承抽象父类
3.子类必须覆盖重写抽象父类当中所有的方法