【问题标题】:How do i get an object from another class in java如何从java中的另一个类中获取对象
【发布时间】:2014-09-17 17:33:58
【问题描述】:

我有一个对象,例如名为 myObject,这个对象有一个整数 5。我如何将这个对象发送到另一个类或从它创建的类中检索对象,以便我可以使用该对象及其所有即使我在不​​同的类中创建了值?

myObject 类创建自

public class Class
{
    int Int;
    public void setInt(i)
    {
      Int = i;
    }
}

我如何将下面的对象发送到另一个我可以使用它并可以访问其所有值等的类。

Class myObject = new Class();
myObject.setInt(5);

【问题讨论】:

  • 您是否尝试过创建一个返回变量IntgetInt 方法?
  • 答案真的取决于。你以前的编程经验是什么?就目前而言,这个问题太宽泛了。
  • 我想获取整个对象而不仅仅是一个值
  • int 不是Object,而是primitive,因此只能按值检索。
  • 然后是 Class 类型的“myObject”(Class 是一个非常不幸的命名类)。 @PatrickJAbareII 是的,但是 OP 在这里不需要这种区别,现在也不需要。

标签: java oop object


【解决方案1】:

您的变量应该更具体。有一个名为“Int”的 int 和一个名为“Class”的类会让人非常困惑。

您的第二个类将需要将第一个类作为构造函数中的值,除非您要使第一个类中的所有内容对包或项目中的所有内容可见(我不建议这样做)正在做)。因此,我们需要一个公共 getter 和 setter 用于原始类中的 int 值(现在称为 TestObject;而 int 现在称为 num),因为我将变量设为私有(仅对类可见)。现在已经创建了 getter 和 setter,第二个类(现在名为 TestObject2)可以从 TestObject 调用 getter 来检索 int 值。

为 TestObject 中的值设置一个 getter 会适得其反,但我只是将它包含在内以向您展示如何获取该值。

如果您有任何问题,请告诉我!我把代码放在下面:

public class TestObject{
    private int num;

    public int getInt(){
        return num;
    }

    public void setInt(int num){
        this.num = num;
    }

    public static void main (String[] args){
        TestObject obj = new TestObject();
        obj.setInt(5);
        TestObject2 obj2 = new TestObject2(obj);
        System.out.println(obj2.getTestObjectNum());
    }
}



public class TestObject2 {
    TestObject testObject;

    public TestObject2(TestObject testObject){
        this.testObject = testObject;
    }

    int getTestObjectNum(){
        return testObject.getInt();
    }
}

【讨论】:

    【解决方案2】:

    定义类,这样你的类就可以识别它,然后像这样在类中调用它:

    newClass = new Class();
    newClass.setInt(x);
    

    如果它在另一个包中,我相信它是这样的:

    newClass = new packageName.Class();
    newClass.setInt(x);
    

    这正是导入的工作方式,您可以通过“import javax.swing.JFrame; 然后通过定义一个像“JFrame f = new JFrame(); 然后通过执行“f.add();”调用 JFrame 类中的方法

    【讨论】:

    • 我真的不认为这是 OP 要求的。
    猜你喜欢
    • 2013-06-05
    • 2013-04-15
    • 1970-01-01
    • 2016-03-04
    • 2021-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多