2017-02-08 8 views
-1

У меня есть Java-код со структурой, которая показана ниже:Доступ конкретный экземпляр класса внутри одного класса в Java

public class x{ 
       public static void main(string[] args) 
       { 
        ysample1 = new y(m) 
        ysample2 = new y(l) 
          .... 

       } 
       } 

    public class y{ 
       private int m_m 
       public y(int m) 
       { 
        m_m = m 
       } 
       public void control() 
       { 

        h h1 = new h(ysample2) 
       } 
      } 

В какой-то момент, когда я хочу вызвать контроль метод для ysample1 я, возможно, потребуется для доступа к объекту ysample2. Как я могу определить экземпляр класса y global, поэтому я могу получить доступ к ysample2 внутри метода управления в классе y?

Кто-нибудь знает, как я могу это исправить? Благодарю.

+2

Добавьте параметр 'control':' public void control (y target) '. Затем вы можете вызвать 'ysample1.control (ysample2);' в своем основном методе после изменения 'h h1 = new h1 (ysample2)' to 'h h1 = new h1 (target)' –

+0

Спасибо за ваше понимание. Я посмотрю еще раз, чтобы посмотреть, смогу ли я сделать это так. – Crimson

ответ

0

Вы не можете делать то, что хотите, как вы его написали.

Я думаю, что вам нужно ridefine «контроль()» метод как это:

   public void control(Y ysample) 
      { 

       h h1 = new h(ysample) 
      } 

Итак, теперь вы должны иметь «ysample» в качестве параметра, и вы можете сделать из главного

control(ysample2); 

и у вас будет то, что я понял из вас. Если вам нужно что-то еще, прокомментируйте.

+0

Спасибо за ваш ответ. Я посмотрю, посмотрю, смогу ли я использовать эту идею, чтобы исправить мою проблему. – Crimson

 Смежные вопросы

  • Нет связанных вопросов^_^