多态
多态语法格式
父类类名 引用名称 =new 子类类名();
Vehicle c=new car();
注意:当时多态是,该引用类型只能访问父类中的属性和方法,但是优先访问子类重写以后的方法
多态:将多个对象调用同一个方法,得到不同的结构
满足条件:
• 子类必须继承父类
• 子类重写父类方法
• 父类类名 引用名称 =new 子类类名();
多态的好处:
减少代码的冗余性
多态中的两种类型转换
向上转型:自动类型转换,构成多态
• 父类类型 引用名称=New 子类类名();
• 当时多态时,该用用名称只能访问父类中的属性和方法,但是优先访问子类重写以后的方法
向下转型,也叫强制类型转换:
•当是多态时,并且访问子类独有的属性和方法,则必须进行向下转型
• 当进行向下转型时,建议先进行判断,当合法则在转为对应的类型,则使用instanceof关键词
Collection
- 集合是java中提供的一种容器,可以用来存储多个数据
- 数组的长度是固定的。集合的长度是可变的。
- 数组中存储的是同一类型的元素,可以存储基本数据类型值。集合存储的都是对象。而且对象的类型可以不一致。在开发中一般当对象多的时候,使用集合进行存储。
collection常用方法(list set通用):
* public boolean add(E e): 把给定的对象添加到当前集合中 。
* public void clear() :清空集合中所有的元素。
* public boolean remove(E e): 把给定的对象在当前集合中删除。
* public boolean contains(E e): 判断当前集合中是否包含给定的对象。
* public boolean isEmpty(): 判断当前集合是否为空。
* public int size(): 返回集合中元素的个数。
* public Object[] toArray(): 把集合中的元素,存储到数组中。
迭代器(Iterator)
Collection集合包含vector,ArrayList,LinkedList等,取出元素的方式都不一样这时候就需要迭代器取出
Iterator概念:在取出元素之前要判断集合中有没有元素,如果有,就把这个元素取出来,继续判断,还有继续取,直到全部取出,这种取出方式称为迭代
常用两个方法:
boolean hasNext() E next()
//遍历
Iterator<String> it = collection.iterator();//获取迭代器的实现类对象(多态)
while