मैंने पहले आज दंग रह गया था जब कुछ कोड डिबगिंग निम्नलिखित की तरह है कि कुछ को खोजने के लिए एक संकलन समय अपवाद फेंक नहीं है:यह संकलन क्यों करता है?
public Test() {
HashMap map = (HashMap) getList();
}
private List getList(){
return new ArrayList();
}
आप कल्पना कर सकते हैं, एक ClassCastException
कार्यावधि में फेंक दिया जाता है, लेकिन किसी को यह कर सकते हैं एक पर List
का कास्टिंग क्यों संकलित समय पर कानूनी माना जाता है?
http://stackoverflow.com/questions/19895304/classcastexception-vs-cannot-cast-compilation-error/37190861#37190861 –