类的行为和属性分为两部分:自己的行为和属性以及从超类继承的行为和属性
继承
子类使用超类的方法和属性
建立继承
使用关键字extends
class A extends B{
//behavior and attributes go here
}
覆盖
子类中定义的方法在超类中也定义过,使用时将使用子类中的定义,因此子类可修改、替换、删除超类中的行为和属性
覆盖方法
子类要想覆盖超类中的方法,必须以与超类相同的方式声明它,public的方法仍是public,方法的返回值类型必须相同,参数的数量和类型都不能变。
子类中使用this和supper
关键字this用于引用当前对象
关键字supper用于引用对象的上一级超类:我们最好在子类的构造函数中调用超类的构造函数,此时就会用到supper
class readFlies(String name, int length){
super(name, length);
}
这是子类的构造函数,它的第二行调用了超类的构造函数。如果不进行此步骤,可能会导致子类执行构造时,java自动调用无参数的超类构造函数,可能会产生错误。
将相同类型的对象存储到Vector中
Vector类类似于数组,也存储相关的数据,但其长度可以动态的增减。Vector类位于java.util包中。
import java.util.Vector;
Vector存储的对象要么属于同一个类,要么有相同的超类。创建Vector,需要引用两个类:Vector和存储在Vector中的类
Vector<String>victor = new Vector<String>();//创建存储字符串的Vector
Vector<String> victoria = new Vector<String>(300);//创建一个包含300个元素的Vector
victor.add("Vance");//元素0为“Vance”
String name = victoria.get(0);//将元素0“Vance”存储到变量name中