Wednesday, 13 May 2009

TOW Type safety

Java 1.4 ile yazılmış bir ejb'yi yeni yazdığım ve generics kullandığım kod üzerinden çağırırken aşağıdaki uyarıyı alıyorum:

Type safety: The expression of type List needs unchecked conversion to conform to
List<XYZObject>

Compiler, type uyumunu kontrol ederken ejb'deki eski koddan gelecek listedeki type'ı bilemediğinden bu hatayı vermesi normaldir.
Sonuçta uyarıdır, geçilir. Ama kafaya takılmaması için şu annotation, ilgili metodun üzerine eklenebilir. Ki ben öyle yaptım.

@SuppressWarnings("unchecked")
public List<AddressUnit> getCityList() throws Exception {
. . .
}

Aynı kod generics kullanılmadan da yazılabilir, başka bir uyarı da alınabilirdi :)

Generics yazarken type ismi yerine ? kullanılarak da bu uyarının üstesinden gelinebilir.

public List<?> getCityList() throws Exception {
. . .
}

No comments: