weixin_47092701 2021-12-13 11:33 采纳率: 100%
浏览 40
已结题

请问大家,java中super的父类变量不可以赋值给子类自己的变量吗?

我在写练习题的时候遇到一个子类方法重写的问题
class Sub extends Base {
int m = super.getX();
int n = super.getY();
public int sum(){
    System.out.println( m + n);
    return m + n;
}
public int avg(){
    return (m + n)/2;
}
在这里父类Base里的x和y都有值,是私有的,但是我想把这两个值赋给m和n,执行出来结果m和n都是0,所以下边计算sum和avg的结果都是0.但如果我不赋值直接把getset方法写在return里,结果就正常,就像下边这样
class Sub extends Base {
public int sum(){
    return super.getX() + super.getY(); 
}
public int avg(){
    return (super.getX() + super.getY()) / 2;
}
我知道下边这种更好,但不明白我上边写的为什么m和n赋值不了呢,烦请大家给我解答一下。
  • 写回答

3条回答

      报告相同问题?

      相关推荐 更多相似问题

      问题事件

      • 系统已结题 12月21日
      • 已采纳回答 12月13日
      • 创建了问题 12月13日

      悬赏问题

      • ¥15 “glmnet”运行出错
      • ¥30 如何用matlab表达以下公式?
      • ¥15 在arm架构芯片上基于32位linux操作系统做内存检查
      • ¥15 怎么样才能禁止VS自动调整Windows窗体布局
      • ¥15 mysql5.7.40安装到Initializing database报错,如何解决?
      • ¥30 如何降低hdfs中datanode的JVM内存用量
      • ¥15 Android URL如何转成视频/音频,可行吗?
      • ¥20 Hive SQL数据查询,子查询
      • ¥15 c++字符串分割问题
      • ¥15 vue+uniapp