Neden java.lang.Character
yılında isJavaLetterOrDigit
yöntem eskimiştir?NedenJavaLetterOrDigit kullanımdan kaldırıldı?
docs yöntem isJavaIdentifierPart
yerine kullanılması gerektiğini, ama neden olduğu anlamına gelmez söylüyorlar. İki yönteme ait belgeler başka türlü aynıdır. Konuya yön vermek herhangi bir açıklama yapmadı.
Aslında, bir kaynak kod arama günümüzde, biri sadece diğer aramaları gösterir, böylece davranışlarında bir fark yoktur. Daha fazla kafa karıştırıcı bir isim olduğu için kullanımdan kaldırıldı mı? Oldukça garip bir karar gibi görünüyor.
@Deprecated
public static boolean isJavaLetterOrDigit(char ch) {
return isJavaIdentifierPart(ch);
}
Onlar ikili uyumluluk nedenleriyle, 'kütüphane sağlayıcılar tarafından terk edilmesi' olamaz. – EJP
@EJP Uyumluluk nedeni biliyorum, kullanımdan kaldırılan API'ler genellikle bir süre tutulur. Fakat uzun vadede, kütüphane sağlayıcı bu uyumluluğu bozmayı seçebilir. Her neyse, bu riski almak istemiyoruz. –
@HuiZheng - Geçmiş geçmişe dayanarak, yöntem kaldırılmaz. Bunu yapmak için Oracle veya onun (ödeme yapan) müşterilerinin çıkarlarında olmaz. Dokümantasyon, bu * nın * olabileceğini söylüyor ... ama ben tahmin etmeyeceğim *.(Ya da en azından Oracle, eski kodu otomatik olarak kaynak kodu VE bytecode seviyesinde yükseltmek için güvenilir araçlar sağlayamazsa). –