Java 继承_注意事项

1、java 类的继承包括对超类的变量、类的构造函数以及其余普通方法的继承;


(1)、子类继承超类的成员变量的原则:
(a) 子类能够继承超类中关键字带有public、protected的成员变量;而带有private关键字的变量无法继承;
(b) 子类中如果包含超类中的变量,则会起到隐藏原始类中的变量;
(c)子类与父类在同一包下的时候继承才能生效;

(2)、子类继承超类的构造函数的机制:

(a)如果子类和父类都没有额外定义自己本身的构造函数,那么子类会隐式调用父类的无参数构造函数,如果父类定义好了带参数的构造函数,子类在继承的时候就必须在子类的构造函数显示使用super(arg0,arg1......)来继承。

(3)、子类继承超类的普通方法的原则:与子类继承超类的成员变量机制相同;


2、 java 子类从超类继承之后,子类能够不但能够重写父类的方法也可以扩展父类的方法:
以下是利用 java 子类扩展父类的方法calculateResult(int a,int b)的例子:
public class BigValue {  

float result;  
public BigValue(int a,int b){  
result = calculateResult(a,b);    
}  

public float calculateResult(int a,int b){  
return (a * 10) + (b * 2);  
}   
}  

class BiggerValue extends BigValue {  

public BiggerValue(int a,int b,int c){  

super(a,b);  
System.out.println(super.result);  
result = calculateResult(a,b,c);  
}  

float calculateResult(int a,int b,int c){    
return result * (c * 3);  
}  
}  

public static void main(String[] args) {  

BiggerValue bgr = new BiggerValue(2,3,4);  
System.out.println(bgr.result);  
}  

//  
26.0  
312.0  

上述代码中 BiggerValue 类首先继承其父类 BigValue 的构造方法,调用父类 calculateValue(int a,int b)
计算出 父类中的变量 result 的值,然后调用子类中的 calculateValue(int a,int b,int c)扩展计算子类中的
result 覆盖其父类的值;从中可以看出子类不仅仅可以覆盖父类的方法亦可以扩展父类的方法。

就先记录到这里了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值