Я новачок в об'єктно-орієнтованому програмуванні і не розумію, яка мета головного.
Так, я читав, що це "точка входу" програми, але те, що я не розумію, це те, що повинно бути головним? А які його обов'язки?
Може статися, що щось написане в основному може бути інкапсульовано в інший об’єкт, але наскільки ви повинні використовувати цей підхід?
Ось мій найперший головний, який я написав на Java, це дуже просто, але це може змусити вас краще зрозуміти мої сумніви. У мене є абстрактний клас «Тварина», який поширюється на «Кіт» та «Собака». Я використовував головний для створення якогось об'єкта, а також як "інтерфейс" з користувачем, дійсно, як ви бачите, я використав деяку умовну інструкцію "запитати користувача", що він хоче робити.
Моє запитання виникло з-за того, що інтерфейс можна було інкапсулювати в інший об’єкт і не надати цю відповідальність головному.
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("What type of animal do you want to create? \n dog cat");
String type = input.nextLine();
if ( Objects.equals(type, "dog")){
System.out.println("Enter the animal's age: ");
int age = input.nextInt(); // Scans the next token of the input as an int.
System.out.println("Enter the animal's name: ");
String name = input.next();
Dog first = new Dog(name, age);
}
else if ( Objects.equals(type, "cat")) {
System.out.println("Enter the animal's age: ");
int age = input.nextInt(); // Scans the next token of the input as an int.
System.out.println("Enter the animal's name: ");
String name = input.next();
Cat first = new Cat(name, age);
}
else{
System.out.println("Error: the specified type does not exist.");
}
System.out.println("The number of animals is:" + numberOfAnimals);
}
main
Функція не є поняттям з об'єктно - орієнтованого програмування.