【发布时间】:2013-06-13 19:52:49
【问题描述】:
我已经学会了如何在两个类之间调用方法甚至变量。我想知道您是否可以在不使用继承的情况下将值从一个类移动到另一个类。这是一个例子:
- 我创建了两个类:class1 和 class2。
- 我输入了一个具有 class1 值的变量。
- 将变量的值移动到 class2。
- 让值由class2中的if语句测试。
- 可以将类 2 中的输出移动到类 1,或者可以在类 1 中调用具有类 2 输出的方法。
虽然这不是一个真正的程序架构,它只是为了我的学习目的。谢谢你。 更新: 我被要求发布一些我为展示上述想法所做的代码。 这是一类:
class MainClass
{
public static void main(String[] args)
{
System.out.println("You have entered: " + args[0]);
static int num = Integer.parseInt(args[0]);
SubClass.calc(); //I believe I override it by passing value to a method within SubClass
}
}
这是第二课:
class SubClass
{
public static void calc()
{
System.out.println("This is the output" + MainClass.num);
}
}
我尝试将 args[0] 中的值从 MainClass 移动到 SubClass,但是当我尝试将其从 string 转换为 int 数据类型时出现错误:
pavel@pavel-OptiPlex-GX270:~/myjava$ javac MainClass.java
MainClass.java:9: error: cannot find symbol
static int num = Integer.parseInt(args[0]);
^
symbol: variable args
location: class MainClass
1 error
有什么办法可以解决这个问题吗?
【问题讨论】:
-
Pavel,您需要发布一些代码来向我们展示您的尝试。你需要把它发布到stackoverflow,而不是在这里。
-
嗨@pavelexpertov,我不知道你想达到什么目标,但这条路看起来不太好。尝试以可以传递参数的方式重构您的代码。
-
我在下面有一些答案。如果您看不到,我认为我的帖子已移至 stackoverflow。由于一些奇怪的原因,我在程序员的网站上看到了我的帖子以及 stackoverflow 的帖子。
标签: java class class-design static-members argument-passing