-1

私は Java は初めてですが、C++ についてはかなりの経験があります。C++ のポインターでしか実現できない Java でやりたいことがあります。コードは千語以上を説明するので:

class Parent;
class Kid;

class Parent{
public:
    Parent();
private:
    Kid *kid;
};

class Kid{
public:
    Kid(Parent*);
private:
    Parent *parent;
};

Parent::Parent(){
    //give self
    kid = new Kid(this);
}

Kid::Kid(Parent* parent){
    //kid can now adress the class containing the instance
    parent = parent;
}

では、これは Java で可能でしょうか。

4

3 に答える 3

1

Java では、new で作成するすべてのオブジェクトは、実際には参照、つまりポインターです。したがって、すべてを「new」で作成するだけで問題ありません。

public class Parent{
public Parent() { kid = new Kid(this) }
private Kid kid;
}

public class Kid{

public Kid(Parent parent){ this.parent = parent }
private Parent parent;
};
于 2013-05-06T16:16:11.493 に答える