java - 如何使用父类(super class)的实例访问子类的重写变量

标签 java

我是java初学者。这是我的代码

class Super{
public int a;
}
class sub extends Super{
int a = 10;
}

public class test{
public static void main(String args[]){

Super var = new sub();
System.out.println(var.a);//Here I want to print 10 , value of sub class
} 
}

这可能吗?如果是的话请告诉我怎么做? 我对这个问题的标题有一些疑问,所以请建议我一个合适的问题,因为我已经解释了我在代码中想要的所有内容。

最佳答案

你应该在你的父类(super class)中添加一个 getter 方法

public int getA(){
return a;
}

子类也会继承getter,你可以在子类中访问a的值。还建议将类属性设置为 protected 或私有(private)而不是公共(public)。

关于java - 如何使用父类(super class)的实例访问子类的重写变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37519139/

相关文章:

java - 在字符串中找到一个 6 位数字

java - 试图将 sqlite 数据库从 android 手机发送到 web 服务器

java - 删除每行开头的空格并结束每行的结尾

java - 我正在尝试找到一种比使用一堆 switch 语句更有效的方法

java - 无法转换到类 org.springframework.cloud.circuitbreaker.resilience4j.Resilience4JCircuitBreaker

java - 我的 Java 服务器端未读取来自 Java 客户端的更多传入消息

java - 如何从servlet中的html表中检索数据并将其插入数据库

java - 尝试在 order by 之后添加条件时,JPQL 查询出现异常

Java:如何从 JcomboBox 返回 JDBC 查询

java - 一个变量可以在一条语句中递增多少次?