java - Java中的指针逻辑

标签 java pointers

我需要找到一种通过getter函数直接修改Java中类的私有(private)成员的方法。我知道我可以在 C++ 中使用这样的指针来做到这一点;

class FooBar
{
    private:
        Foo foo;

    public:
        Foo* getFoo()
        {
            return &foo;
        }
}

然后我可以通过公共(public)函数getFoo()直接操作私有(private)变量foo,因为getFoo()返回一个指针(例如getFoo()->callFunction();)

所以我想知道的是,有没有办法在 Java 中复制完全相同的效果?......有什么办法吗?

最佳答案

class FooBar {
    private Foo foo;

    public Foo getFoo() {
        return foo;
    }
}

Java 中的所有对象变量都是对对象的引用,因此您可以将它们视为“锁定”指针。 “锁定”是指您无法用它进行任何指针算术。

关于java - Java中的指针逻辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14009850/

相关文章:

c++ - 如何在不使用循环的情况下快速打印由指向指针的指针组成的二维字符数组?

C:将变量传递给函数会给出错误的返回

c++ - 为什么 C++ 变量是指针时不需要正确定义?

Java线程同步

java - 从另一个类调用 'requestWindowFeature'

java - 启动画面在 Android 4.4.4 中不工作

java - 组合 Java 性能

Java 一个包含其他 sibling 的子类

c - 以下 C 中的声明之间有什么区别?

C++ : Using a int pointer to point to a vector created inside a function