gpt4 book ai didi

java - 变量的继承值为0

转载 作者:行者123 更新时间:2023-12-02 09:41:20 25 4
gpt4 key购买 nike

我是初学者,我正在尝试继承另一个类中变量的值。我得到的值是 0,应该是 10。

头等舱:

public class assignment
{
int var = 10;

public static void main(String[]args)
{
initialize pere = new initialize();
System.out.println(" ");
System.out.println(" pere.invariable: "+pere.invariable);
}
}

第二个类从类赋值继承 var:

public class initialize
{
public static int invariable;

public static void main(String[]args)
{
assignment variable = new assignment();
System.out.println(" variable.var : " + variable.var);
invariable = variable.var;
System.out.println(" invariable: " + invariable);
}
}

为什么pere.invariable = 0而我却继承了invariable(在第二类中)= 10?

最佳答案

我认为这里的困惑源于几个地方。

这里没有发生继承。继承是发生在类上的事情。例如,

public class A {}

// B extends A
public class B extends A {}

类的“入口点”通常是它的构造函数。 main 不是构造函数,它是 Java 应用程序的入口点(它是 main 函数)。构造函数是一个用类名标记的函数。例如:

public class B {
public B() {
// I am inside a constructor
}
}

您的代码现在所处的位置,initialize main 函数永远不会被调用。您要么需要从您的赋值主函数中手动调用它,要么需要将其转换为构造函数(更改它的名称并删除 static 修饰符,如我的示例中所示)。

这看起来像是学校作业。据我所知,StackOverflow 有一项政策,禁止直接回答学校作业问题,但我希望这个答案至少可以帮助消除一些困惑,并帮助您指明正确的方向。

关于java - 变量的继承值为0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57043741/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com