implicit upcasting and explicit downcasting in java
问题 When java can implicitly do up casting , why does not it implicitly do down casting ?Please explain with some simple example? 回答1: The point is that upcasting will always succeed, so it's safe - whereas downcasting can fail: String x = getStringFromSomewhere(); Object y = x; // This will *always* work But: Object x = getObjectFromSomewhere(); String y = (String) x; // This might fail with an exception Because it's a "dangerous" operation, the language forces you to do it explicitly - you're