Так что это может быть очень простой вопрос, который я overthinking, но если я что-то вроде следующего:Правильный доступ к методам и переменным родителям?
class A{
public String test_string = "before (default)";
public A(){
B b = new B(this);
}
public void testA(){
this.test_string = "after (new)";
}
}
где В:
class B{
private A parent;
public B(A mParent){
parent = mParent;
}
private void testB(){
System.out.println(parent.test_string);
}
}
Would, что позволит мне еще получить доступ к тот же экземпляр A
(все его общедоступные поля и методы)? Если я позвонил A.testA()
из другого класса где-то еще в этом конкретном экземпляре A
, был бы B
, который был сконструирован в том, что функция 1 конструктора testB
возвращает строку "after (new)"
? Или это будет копия A
, потому что не присваивает java значение, а не ссылку? Есть ли лучший способ сделать это? Я только что усложнил проблему?
Я не был уверен, что искать, поэтому я не мог найти другие вопросы, которые отвечали на мой вопрос.
Заранее благодарен!
Что-нибудь, в частности, не позволяет вам открыть новый файл кода и просто попробовать его? –