关于会话属性,下面哪两个说法是正确的?( )
A. HttpSession的getAttribute(String name)返回类型为Object
B. HttpSession的 getAttribute(String name)返回类型为String
C. 在一个 HttpSession上调用setAttribute(" keyA" , " valueB")时,如果这个会话中对应键keyA已经有一个值,就会导致抛出一个异常
D. 在一个 HttpSession上调用setAttribute(" keyA " , " valueB")时,如果这个会话中对应键keyA已经有一个值,则这个属性的原先值会被valueB替换