Birisi bana Object
sınıfında tanımlanan toString()
metodu kavramını açıklayabilir mi? Nasıl kullanılır ve amacı nedir?
Object.toString()]1 dokümanlarından:
öğesinin bir dize gösterimini döndürür. nesnesi. Genel olarak, toString yöntemi bir dize döndürür "metinsel olarak" bu nesneyi temsil eder. Sonuç kısa ama öz olmalıdır bilgilendirici bir temsil olan bir kişi için okuması kolay. Bu tüm alt sınıfların bu yöntemi geçersiz kılın.
Object sınıfı için toString yöntemi aşağıdakilerden oluşan bir dize döndürür nesnenin ait olduğu sınıfın adı bir örnektir, at işareti karakteri `@' ve işaretsiz onaltılık hash kodunun gösterimi nesnesi. Başka bir deyişle, bu yöntem değerine eşit bir dize döndürür of:
getClass().getName() + '@' + Integer.toHexString(hashCode())
Örnek:
String[] mystr ={"a","b","c"};
System.out.println("mystr.toString: " + mystr.toString());
output:- mystr.toString: [Ljava.lang.String;@13aaa14a
İsteğe bağlı olarak bir uygulama bağlamında kullanılabilir, ancak çok daha sık olarak hata ayıklama amacıyla kullanılır. Örneğin, bir IDE'de bir kesme noktasına ulaştığınızda, nesnelerin anlamlı bir toString()
ini okumak, üyelerini incelemekten çok daha kolaydır.
Bir toString()
metodunun ne yapması gerektiği konusunda belirlenmiş bir gereklilik yoktur. Geleneksel olarak, çoğu zaman size sınıfın adını ve ilgili veri üyelerinin değerini söyleyecektir. Çoğu zaman, toString()
metotları IDE'lerde otomatik olarak oluşturulur.
Bir toString()
yönteminden belirli bir çıktıya güvenmek veya bunu bir program içinde ayrıştırmak kötü bir fikirdir. Ne yaparsanız yapın, bu yoldan gitmeyin.