2014-02-06 70 views
0

谁能请解释我为什么我们需要在给定的行为什么我们需要做类型转换这一行

mypack.adder rect=(mypack.adder) session.getAttribute("rect"); 

什么session.getAttribute实际上是在做类型转换? session.setAttribute(string,object)是做什么的? 字符串如何与对象相关?

+2

您始终拥有文档来查看方法的返回类型,并了解该方法的用途。 –

+1

因为'session.getAttribute(...)'返回'Object'。 –

回答

0

java中的每个类扩展了java.lang.Object类。这对于许多情况很有用。会话拥有属性,但它不会将您限制为属性的类型 - 它将属性保存为对象类型对象。由于java是静态类型的(编译器需要知道每个变量的类型),因此需要将刚刚从会话获得的属性显式转换为类型,因为getAttribute()返回java.lang.Object对象。请参阅http://en.wikipedia.org/wiki/Downcasting的更多内容

相关问题