Röportajımda karşılaştığım soru bu.
Java'daki ana yöntem neden genel statik void main (String [] args) olarak adlandırılır?
Cevap:
1. main () , program yürütme başladığında JVM tarafından çağrıldığı için herkese açık olarak bildirilmelidir.JVM , program paketimize ait değildir.
Biz public.If olarak beyan etmek zorunda paket biz halka dışında bir olarak ilan erişim ana dışarıya Inorder bir gösterir Zamanı Hatası ancak Derleme zamanı hatası
2. main () statik olarak bildirilmelidir, çünkü bir yöntem statik olarak bildirilirse, ClassName.methodName () kullanarak sınıf dışında bu yöntemi çağırabiliriz ;
class Sample
{
static void fun()
{
System.out.println("Hello");
}
}
class Test
{
public static void main(String[] args)
{
Sample.fun();
}
}
JVM önce Test sınıfını yükler ve Komut Satırı bağımsız değişkenlerini denetler ve ana yöntemi Test.main () olarak çağırır;
3. main (), void main () olarak bildirilmelidir, çünkü JVM main () 'den herhangi bir değer beklememektedir.
Başka bir dönüş türü sağlanmışsa, bu bir RunTimeError yani NoSuchMethodFoundError şeklindedir.
4. main (), diziler olarak String argümanlarına sahip olmalıdır, çünkü JVM komut satırı argümanını ileterek ana yöntemi çağırır. String dizi nesnesinde saklandıkları için main () öğesine argüman olarak iletilir.