【问题标题】:Java -- Pass variable from class to classJava——将变量从一个类传递到另一个类
【发布时间】:2020-01-09 23:15:35
【问题描述】:

我知道要从 Same 类中传递,我会做这样的事情 --- 但是类之间呢?

class TestMe{
    public static void main(String[] args)
    {
        int numberAlpha = 232;
        TestMe sendNumber = new TestMe();
        sendNumber.Multiply(numberAlpha);
    }

    void Multiply(int var)
    {
        var+=40;
    }
}

【问题讨论】:

  • 创建一个实例并使用适当的实例方法传递变量。请阅读Classes and Objects
  • 查找 JavaDocs 和对象/方法
  • 那是......“在同一个类中传递变量”的奇怪方式。 Multiply 不能设为静态吗?至于您的一般问题,如果您区分“类”和“对象”可能会更容易。您没有将变量“传递给同一类”。您正在创建一个TestMe 类型的对象并在其上调用一个函数。您可以创建任何其他类型的对象,并以完全相同的方式调用函数。
  • 你肯定需要找一本关于一般编程和面向对象编程的好读物。
  • 您的问题不清楚。是通过引用传递吗?

标签: java


【解决方案1】:

您使用 getter 和 setter。

class A {
    private int a_number;
    public int getNumber() { return a_number; }
}
class B {
    private int b_number;
    public void setNumber(int num) { b_number = num; }
}

.. 在你的主要方法中,无论它在哪里:

public static void main(String[] args) {
    A a = new A();
    int blah = a.getNumber();
    B b = new B();
    b.setNumber(blah);
}

您还可以将构造函数用作“初始设置器”的一种方式,以便始终使用已实例化的最小变量集来创建对象,例如:

class A {
    private int a_number;
    public A(int number) { // this is the only constructor, you must use it, and you must give it an int when you do
        a_number = number;
    }
    public int getNumber() { return a_number; }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-02-08
    • 1970-01-01
    • 2014-01-03
    相关资源
    最近更新 更多