当前位置: 代码迷 >> Java相关 >> 有人知道super()的用法么?
  详细解决方案

有人知道super()的用法么?

热度:375   发布时间:2006-06-16 15:06:23.0
有人知道super()的用法么?

public class BankAccount
{
private double balance;
public BankAccount(double initBalance)
{
balance = initBalance;
}
}

public class SavingsAccount extends BankAccount
{
double interestRate;
public SavingsAccount(double initRate,double initBalance)
{
super(initBalance);
interestRate = initRate;
}
}

有人知道以上的program里super(initBalance)代表什么,有什么重要意义?为什么是必须的?
谢谢~!

搜索更多相关的解决方案: super  double  用法  initBalance  public  

----------------解决方案--------------------------------------------------------
super就是调用父类的方法,BankAccount类中有一个构造函数public BankAccount(double initBalance),所以使用super(initBalance);这样的。其用法等同于new BackAccount(initBalance);,当然,你继承了,就使用super而不是实例化了。
----------------解决方案--------------------------------------------------------

那为什么里面的super(initBalance)是必须的?不能换成其他的吗?


----------------解决方案--------------------------------------------------------
不能换成其它的,因为你的父类只有这一个带有参数的构造函数,如果他有别的构造函数的话,你就可以换成别的
----------------解决方案--------------------------------------------------------
LZ是这样定义的:

private double balance;

balance 不是private的吗!! 私有的也可以继承吗 ? 不是public才继承 private 不要的吗 不懂
----------------解决方案--------------------------------------------------------
private 当然不能继承
他的这个程序子类也用不到private这个变量

----------------解决方案--------------------------------------------------------
谢谢大家、
----------------解决方案--------------------------------------------------------
  相关解决方案