集合
ArrayList
可调整大小的数组实现
存储空间可变、数据容量可变
// <E>为一种特殊的数据类型,泛型
ArrayList<E> array = new ArrayList<E>()
方法名 | 说明 |
---|---|
public ArrayList() | 创建一个空的集合对象 |
public boolean add (E e) | 将指定元素追加到此集合的末尾 |
public void add (int index, E element) | 在此集合中下标为 index 的元素前面新增指定元素,注意 index 不能大于 array.length |
ArrayList 常用方法
方法名 | 说明 |
---|---|
public boolean remove(Object o) | 删除指定元素,返回 true 或 false |
public E remove (int index) | 删除 index 处元素,返回被删除的元素 |
public E set (int index,E element) | 修改 index 处元素,返回被修改的元素 |
public E get (int index) | 返回 index 处元素 |
public int size() | 返回集合中的元素个数 |
继承
- 继承格式
public class 子类名 extends 父类名{}
-
继承中的变量访问特点
在子类方法中访问一个变量的查找顺序:
子类的局部范围 – 子类的成员变量 – 父类的成员变量 – 如果还没有就报错(不考虑父亲的父亲) -
this 和 super 的用法
-
继承中构造方法的访问特点
子类中所有的构造方法默认都会访问父类中无参的构造方法
reason:
1、子类会继承父类中的数据,所以要在子类初始化前完成父类数据的初始化;
2、每一个子类构造方法的第一条默认语句都是super()
如果父类没有无参构造方法,只有带餐构造方法
solution:
1、通过super(参数)去调用父类带餐构造方法;
2、在父类提供无参构造方法(推荐)
-
继承中成员方法的访问特点
子类的成员方法 – 父类的成员方法(super) – 如果还没有就报错(不考虑父亲的父亲) -
方法重写的注意事项
1、私有方法不能被重写(父类私有成员子类不能继承)
2、子类方法访问权限不能更低(public > 默认 > private) -
Java继承的注意事项
1、Java类只支持单继承,不支持多继承
2、Java类支持多层继承
权限修饰符
状态修饰符
final
final 可以修饰成员方法、成员变量以及类
- 修饰成员方法:表明该方法为最终方法,不可被重写
- 修饰成员变量:表明该变量值为最终值,不可被重新赋值
- 修饰类:表明该类为最终类,不可被继承
- 修饰局部变量:表明该局部变量值变为常量值,不可被重新赋值
- 修饰引用类型变量:表明该引用类型变量地址值不可被重新赋值,但其指向的内容可以被修改
static
static 可以修饰成员方法、成员变量
成员变量
- 被类的所有对象所共享
- 可以通过类名调用(推荐)
- 也可以通过对象名调用
成员方法
非静态成员方法
可访问:
- 非静态成员变量
- 非静态成员方法
- 静态成员变量
- 静态成员方法
静态成员方法
可访问:
- 静态成员变量
- 静态成员方法
总结:静态成员方法只能访问静态成员
练习代码: day5_code