Nesneye yönelik programlama konusunda yeniyim ve ana programın amacının ne olduğunu anlamıyorum.
Evet, bunun programın "giriş noktası" olduğunu okudum ama anlamadığım şey esas olarak ne olmalı? Sorumlulukları nelerdir?
Ana metinde yazılmış bir şey başka bir nesnede kapsüllenmiş olabilir, ancak bu yaklaşımı ne kadar kullanmalısınız?
İşte benim Java'da yazdığım ilk ana, çok basit ama şüphemi daha iyi anlamanıza neden olabilir. Ben "Kedi" ve "Köpek" tarafından uzatılmış soyut bir sınıf Hayvan var. Bazı nesne oluşturmak için ana kullandım ve aynı zamanda kullanıcı ile bir "arayüz" olarak kullandım, aslında gördüğünüz gibi "kullanıcıya ne yapmak istediğini sormak" için bazı koşullu talimatlar kullandım.
Sorum, arayüzün başka bir nesnede kapsüllenebilmesi ve bu sorumluluğu anaya verememesinden kaynaklandı.
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
Fonksiyon OOP bir kavram değildir.