当前位置: 首页 > article >正文

JAVA: 子类“覆盖”父类的成员变量

 参考:JAVA: 子类“覆盖”父类的成员变量_子类覆盖父类成员变量-CSDN博客

public class Person {
    static String name = "person";
 
    public String getName() {
        return name;
    }
 
    public void setName(String name) {
        this.name = name;
    }
}
 
public class Dad extends Person {
    static {
        name = "Dad";
    }
}
 
Person dad = new Dad();
System.out.println(dad.getName());

static块会在类初始化而不是实例化时被执行,而父类中的static成员变量会在子类static块执行前就定义完成,所以子类初始化时会修改父类的成员变量值,子类实例化时自然得到的父类成员变量值也是修改过的,这样完成了“覆盖”

注:像下面这种方法是错误的

public class Dad extends Person {
    name = "Dad";
}

JAVA中变量是不能在方法之外进行赋值操作的


http://www.kler.cn/a/456866.html

相关文章:

  • vscode-QT环境配置
  • 深度学习在图像识别中的最新进展与实践案例
  • 低空经济服务线路,无人机建筑工地吊运技术详解
  • 详细讲一下React中的路由React Router
  • Java:190 基于SSM的药品管理系统
  • ds刷题day3|76. 最小覆盖子串、3. 无重复字符的最长子串、11. 盛最多水的容器、LCR 007. 三数之和
  • React里使用uuid插件--生成随机的id
  • 大型系统中 Redis 的优化与挑战
  • Ubuntu升级ssh版本到9.8
  • AppAgent 源码 (AndroidController 类 )
  • 【LLM论文日更】| 训练大型语言模型在连续潜在空间中进行推理
  • 服务器被攻击怎么办
  • 如何注册华为云国际版账户:详细步骤指南
  • info There appears to be trouble with your network connection. Retrying
  • YOLOX算法及其改进
  • C语言实现跨主机通讯
  • 6-Gin 路由详解 --[Gin 框架入门精讲与实战案例]
  • 电商项目-数据同步解决方案(三)商品上架同步更新ES索引库
  • vue3使用element-plus,解决 el-table 多选框,选中后翻页再回来选中失效问题
  • 如何部署SparkHistoryServer
  • 【Unity/C#】Fisher-Yates洗牌算法
  • 湖仓一体架构解析:数仓架构选择(第48天)
  • 软件安全性测试有多重要?好用的安全测试工具有哪些?
  • 使用 CSS 的 `::selection` 伪元素来改变 HTML 文本选中时的背景颜色
  • docker安装记录
  • leetcode hot100 括号生成