Есть ли способ установить переменные экземпляра одного класса в переменные экземпляра другого класса, и когда переменные экземпляра второго класса будут изменены, переменные экземпляра первого класса также изменяются вместе с ним перед тем, как создавать объекты из любых классов? Это моя собака класс:Установка переменных экземпляра одного класса в переменные экземпляра другого класса и
public class Dog {
int size;
Dog(int size) {
this.size = size;
}
public static void main(String args[]) {
Cat cat = new Cat();
Dog dog = new Dog(cat.size);
System.out.println(dog.size);
cat.size = 17;
dog.size = cat.size;
System.out.println(dog.size);
}
}
Это мой класс Cat:
public class Cat {
int size = 5;
}
Как вы можете видеть, что я должен сделать объекты из них обоих, чтобы установить dog.size в cat.size , Есть ли способ сделать это так, что перед тем, как вы создадите объекты, переменная «размер» экземпляра в классе Dog автоматически будет установлена в переменную «размер» экземпляра в классе Cat? В принципе, если переменная «размер» экземпляра в классе Cat получает значение 20, я хочу, чтобы переменная экземпляра «размер» каждого объекта, который я делала из класса Dog, также имела значение 20. Я надеюсь, что мои объяснения были не слишком сбивает с толку. О, а также, я знаю, вы можете сделать это с наследованием, но класс, который я фактически использую, уже наследует другой класс, поэтому я не могу использовать этот метод. Если кто-нибудь знает какие-либо другие методы, пожалуйста, дайте мне знать. Спасибо.
Почему бы не иметь размер в классе, который они оба наследуют? Сделать статическую переменную сделает трюк. –
@ ZiadHalabi Собака только наследует один класс, Cat. И создание переменной экземпляра static делает так, что вы не можете создавать объекты этой переменной. – Skillet
Да, вот что я имел в виду! –