第一題:(答案:F)Given the following method signatures from ArrayList:boolean add(E e)protected void removeRange(int fromIndexInclusive, int toIndexExclusive)int size()and given: 2. import java.util.*;
3. public class MyUtil extends ArrayList {
4. public static void main(String[] args) {
5. MyUtil m = new MyUtil();
6. m.add("w"); m.add("x"); m.add("y"); m.add("z");
7. m.removeRange(1,3);
8. System.out.print(m.size() + " ");
9. MyUtil m2 = new MyUtil2().go();
10. System.out.println(m2.size());
11. }
12. }
13. class MyUtil2 {
14. MyUtil go() {
15. MyUtil m2 = new MyUtil();
16. m2.add("1"); m2.add("2"); m2.add("3");
17. m2.removeRange(1,2);
18. return m2;
19. } } What is the result?A. 1 1B. 1 2C. 2 1D. 2 2E. An exception is thrown at runtime.F. Compilation fails due to a single error.G. Compilation fails due to multiple errors. 第二題:(答案:F)Given: 1. public class Hose <E extends Hose> {
2. E innerE;
3. public static E doStuff(E e, Hose<E> e2) {
4. // insert code here
5. }
6. public E getE() {
7. return innerE;
8. } } Which can be inserted, independently at line 4, for the code to compile? (Choose all that apply.)A. return e;B. return e.getE();C. return e2;D. return e2.getE();E. return new Hose().getE();F. Compilation fails regardless of which return is inserted. 請大家?guī)兔忉屜略?,多謝啦!
2 回答

長風秋雁
TA貢獻1757條經驗 獲得超7個贊
第一題:
B
第二題:
F
原因如下:
第一題:removeRange(int fromIndex, int toIndex)
移除列表中索引在 fromIndex(包括)和 toIndex(不包括)之間的所有元素。
第二題:
public static E doStuff(E e, Hose e2) {
其實錯誤出在這一句,這是一個靜態(tài)方法,而且是泛型的,靜態(tài)的泛型方法中,E需要先定義才能使用,這里的E并不能使用到public class Hose { 這個地方的E。
所以,無論你在方法中填寫什么內容,都會報編譯錯誤;
可以將static移除掉,然后就可以選擇:
A、B、D、E了。
添加回答
舉報
0/150
提交
取消