java - 由于java没有引用,如何在两个单独的类之间传递信息?

标签 java

抱歉,这个问题非常模糊/令人困惑,我真的不知道如何命名这个问题。如果有人有更好的,请随意编辑它。谈谈我的问题,

public class Foo()
{
    String name;
    public Foo()
    {
        Bar temp = new Bar();
    }
}    

public class Bar()
{
    public Bar()
    {
        setFooName("newName");
    }

    public void setFooName(String name)
    {   
        // Is it possible call a method in Foo?
    }
}    


public class test {
    static public void main(String[] args) 
    {
        Foo foobar = new Foo();
    }
}    

我对java还是个新手,所以我不确定这是否可能,但是使用C++我通常会在“Boo”类中拥有一个“Foo”的局部变量,然后传递一个引用将对象放入Bar的构造函数中,然后将其赋值给Bar中的局部变量。

由于 java 没有引用,我陷入了困境。我想要这样做的原因是我的示例是我需要在类内部创建一个 GUI 对象,然后将来自 GUI 对象的信息发送回创建它的类。

我确实希望这一切都有意义,如果没有,抱歉。

最佳答案

我认为你已经陷入了语义学的困境。

以下示例通过 Bar 的构造函数将 Foo 的引用副本传递给 Bar。现在,Bar 可以访问 Foo 实例的属性。它不允许您做的是更改两者之间的引用(即在 bar 内分配 Foo 的新引用不会更改以前的引用)

public class Foo()
{
    String name;
    public Foo()
    {
        Bar temp = new Bar(this);
    }
}    

public class Bar()
{
    private Foo foo;
    public Bar(Foo foo)
    {
        this.foo = foo;
        setFooName("newName");
    }

    public void setFooName(String name)
    {   
        // Is it possible call a method in Foo?
    }
}    


public class test {
    static public void main(String[] args) 
    {
        Foo foobar = new Foo();
    }
}  
然后,

Bar 可以调用 Foo 提供的任何修饰符,并且它会为每个引用它的人更改 Foo 的各个属性。实例...

我希望这与您的要求很接近:P

关于java - 由于java没有引用,如何在两个单独的类之间传递信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16095308/

相关文章:

Java 处理文件输入

java - 将换行符写入文件

java - 不兼容类型对象无法转换为 t,其中 t 是类型变量

java - 如何制作基于 Java 的图标 URL

java - 如何重构scala中的增量?

java - hadoop,在hadoop-env.sh中设置JAVA_HOME

java - MySQL JDBC 计算行数失败

java - 使用正则表达式在android中将字符串拆分为多个字符串

java - OWL中的CRUD操作

java - 我如何使用警报生成器对话框来显示消息