implicit upcasting and explicit downcasting in jav

2019-03-27 16:23发布

When java can implicitly do up casting , why does not it implicitly do down casting ?Please explain with some simple example?

1条回答
姐就是有狂的资本
2楼-- · 2019-03-27 17:11

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 basically saying to the compiler "I know more than you do at this point!"

查看更多
登录 后发表回答