#methods #static #scope #instance
#методы #статический #область видимости #экземпляр
Вопрос:
Я пытаюсь вызвать метод из другого класса, и из того, что я собрал, метод, который я пытаюсь вызвать, является методом экземпляра. Я понял, что это означает, что он использует переменные экземпляра объекта. Есть ли простой способ вызвать этот метод?
Это основной метод,
public void main()
{
Test.testPetOwner();
}
И это метод, который я пытаюсь вызвать в классе с именем «Test»
public void testPetOwner()
{
String petName;
String species;
String hairCondition;
String posture;
testCompetitor();
PetOwner petOwner1 = new PetOwner();
System.out.println("What is the pet's name?");
petName = Genio.getString();
petOwner1.setPetName(petName);
System.out.println("What is the species of the pet?");
species = Genio.getString();
petOwner1.setSpecies(species);
System.out.println("What is the hair condition of the pet?");
hairCondition = Genio.getString();
petOwner1.setHairCondition(hairCondition);
System.out.println("How is the pet's posture?");
posture = Genio.getString();
petOwner1.setPosture(posture);
}
Ответ №1:
public void main()
{
Test t = new Test();
t.testPetOwner();
}
Комментарии:
1. Большое спасибо! Это всегда кажется очевидным, когда вы видите ответ!
Ответ №2:
Если мы попытаемся получить доступ к методу экземпляра из статического контекста, у компилятора теперь есть способ угадать, на какой метод экземпляра (переменную для какого объекта) вы тоже ссылаетесь. Хотя вы всегда можете получить к нему доступ, используя ссылку на объект.