передайте ссылку на 'это' в конструкторе

Посмотрите на

paste -d: hosts-only.txt user-only.txt pass-only.txt
9
задан kpollock 9 April 2009 в 15:34
поделиться

4 ответа

Технически это должно работать, если вы измените Class2, чтобы включить this.parent = parent;

Однако я не рекомендую это. Вместо этого я бы рекомендовал ленивую инициализацию вашего экземпляра class2 внутри class1. В зависимости от того, что все сделано в конструкторе Class2, вы можете потенциально привести себя в неприятные ситуации.

Создание свойства Class2 для class1 и ленивая его инициализация приведут к созданию Class2 после завершения конструктора Class1, а не во время его конструирования. , что, скорее всего, менее подвержено ошибкам, если ваши классы усложняются.

10
ответ дан 4 December 2019 в 09:14
поделиться

Возможно, вы неправильно набрали код, но я думаю, что вам нужно это определение для Class2 (обратите внимание на это в вашем конструкторе Class2):

public class Class2 
{
    Class1 parent;

    public Class2(Class1 parent)
    {
        this.parent = parent;
    }
}  
10
ответ дан 4 December 2019 в 09:14
поделиться
Class1 parent;
_parent = parent;

_parent никогда не определяется; Вы ошиблись.

2
ответ дан 4 December 2019 в 09:14
поделиться

Я не понимаю, почему это не должно ' т работа. Это работает со мной.

заявил: http://vvcap.net/db/I2OZoapbIRREvQ8ymPym.htp

перешагнул: http://vvcap.net/db/ehsYqCY6JByqZQq-RXGp.htp

вот результат: http://vvcap.net/db/ZWjqb_Yv1yAisX0BYUns.htp

0
ответ дан 4 December 2019 в 09:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: