- 在JAVA中使用extends关键字完成类的继承关系。操作格式:class 父类{} class 子类extends 父类{}
- 在JAVA中只允许单继承,不能多继承。但可以多层继承。
-
- 子类对象在实例化之前必须先调用父类的构造方法,然后才调用子类的构造方法。
- JAVA中继承会默认调用super关键。而且必须是在子类构造方法的第一行。
- 扩大权限不属于复写方法。
- 方法的覆写与重载的区别。
- this与super的区别。
super关键字和this关键字不能同时出现。 - 类的继承小例子
package lianxijihe;
import java.util.Arrays;
class Array{
private int temp[];
private int foot ;
public Array(int len){
if(len>0){
this.temp = new int[len];
}else{
this.temp = new int[1];
}
}
public boolean add(int i){
if(this.foot<this.temp.length){
temp[foot] = i;
foot++;
return true;
}else{
return false;
}
}
public int[] getArray(){
return this.temp;
}
}
class SortArray extends Array{
public SortArray(int len) {
super(len);
// TODO Auto-generated constructor stub
}
public int[] getArray(){
Arrays.sort(super.getArray());
return super.getArray();
}
}
class ReverseArray extends Array{
public ReverseArray(int len) {
super(len);
// TODO Auto-generated constructor stub
}
public int[] getArray(){
int temp;
for(int i=0;i<super.getArray().length/2;i++){
temp = super.getArray()[i];
super.getArray()[i] = super.getArray()[super.getArray().length-i-1];
super.getArray()[super.getArray().length-i-1] = temp;
}
return super.getArray();
}
}
public class lianxi014 {
public static void main(String args[]){
Array test = new ReverseArray(5);
test.add(1);
test.add(2);
test.add(3);
test.add(4);
test.add(5);
print(test.getArray());
}
public static void print(int[] a){
for(int i=0;i<a.length;i++){
System.out.println(a[i]+",");
}
}
}
面向对象高级
最新推荐文章于 2022-11-22 17:25:51 发布