Kurallı, isim, basit isim ve Java Ders adı arasındaki fark nedir? | Netgez.com
SORU
4 Mart 2013, PAZARTESÄ°


Kurallı, isim, basit isim ve Java Ders adı arasındaki fark nedir?

Java: arasındaki fark Nedir:

Object o1= ....
o1.getClass().getSimpleName();
o1.getClass().getName();
o1.getClass().getCanonicalName();

?

GÃœNCELLEME

Zaten Javadoc birden çok kez kontrol ettim ve henüz bu hiç iyi açıklıyor. Ben de bir test çalıştırmak ve bu yöntemleri denir yolu arkasındaki gerçek anlamını yansıtacak yoktu.

Bu yüzden lütfen, bu soruyu soran ve beni javadoc için yönetmenlik için beni suçlamak yerine, onların arkasındaki gerçek anlamını açıklamak için bazı çabalar vermeye çalışın. Desteğiniz için teşekkürler.

CEVAP
4 Mart 2013, PAZARTESÄ°


Eğer bir şey hakkında emin değilseniz, önce bir test yazmayı deneyin.

Bunu ben yaptım:

//primitive
System.out.println(int.class.getName());
System.out.println(int.class.getCanonicalName());
System.out.println(int.class.getSimpleName());

System.out.println();

//class
System.out.println(String.class.getName());
System.out.println(String.class.getCanonicalName());
System.out.println(String.class.getSimpleName());

System.out.println();

//inner class
System.out.println(HashMap.SimpleEntry.class.getName());
System.out.println(HashMap.SimpleEntry.class.getCanonicalName());
System.out.println(HashMap.SimpleEntry.class.getSimpleName());        

System.out.println();

//anonymous inner class
System.out.println(new Serializable(){}.getClass().getName());
System.out.println(new Serializable(){}.getClass().getCanonicalName());
System.out.println(new Serializable(){}.getClass().getSimpleName());

Baskı:

int
int
int

java.lang.String
java.lang.String
String

java.util.AbstractMap$SimpleEntry
java.util.AbstractMap.SimpleEntry
SimpleEntry

ClassnameTest$1
null

getSimpleName boş bir dize döndürür son blok içinde boş bir satır var.

Sonuç olarak buna bakıyor

  • adıdinamik olarak kullanmak istediÄŸiniz adı sınıf ile, örneÄŸin, varsayılan classloader ile Class.forName arama yük.
  • kurallı adbir alma deyimi ve benzersiz olarak kullanılan ismi tanımlayan bir sınıf. toString veya günlük iÅŸlemleri sırasında yararlı olabilir.
  • basit bir isimgevÅŸek tanımlar sınıf, yeniden toString veya günlük iÅŸlemleri sırasında yararlı olabilir ama benzersiz olmasını garanti edilmez.

Bunu PaylaÅŸ:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VÄ°DEO

Rastgele Yazarlar

  • 24 Канал

    24 КанаÐ

    5 ÅžUBAT 2006
  • DigitalRev TV

    DigitalRev T

    30 AÄžUSTOS 2007
  • Lamborghini

    Lamborghini

    13 Aralık 2005