老师给的答案 1。bdf 2。d
还有一道题
32、 给定下列程序,正确的叙述是?
import java.awt.*;
public class Test extends Frame {
public Test() {
Button b1 = new Button(“One”);
Button b2 = new Button(“Two”);
Button b3 = new Button(“Three”);
add(b1); add(b2); add(b3);
setSize(200,200); setVisible(true);
}
}
a) 按钮从左到右排列,显示在窗口的上端
b) 按钮从左到右排列,显示在窗口的下端
c) 按钮从左到右排列,显示在窗口的中央
d) 按钮One显示,并铺满窗口
e) 按钮Three显示,并铺满窗口答案给的是e不知道为什么?
还有一道题
32、 给定下列程序,正确的叙述是?
import java.awt.*;
public class Test extends Frame {
public Test() {
Button b1 = new Button(“One”);
Button b2 = new Button(“Two”);
Button b3 = new Button(“Three”);
add(b1); add(b2); add(b3);
setSize(200,200); setVisible(true);
}
}
a) 按钮从左到右排列,显示在窗口的上端
b) 按钮从左到右排列,显示在窗口的下端
c) 按钮从左到右排列,显示在窗口的中央
d) 按钮One显示,并铺满窗口
e) 按钮Three显示,并铺满窗口答案给的是e不知道为什么?
语法完全正确哦,你是不是认为 /=写错了哦???? /=这个是可以的
同一个文件中最多只能有一个public类,而且这个类必须与文件名相同
记住方法由方法名和argument唯一确定,返回值类型并部能区分方法。所以看的时候不要被其他信息迷惑,只盯着方法名和argument看就行了,一样的就是overriding,不一样就是overloading. a错,因为process(int j)与父类中的process(int abc)冲突,既不是overloading又不是overridding(因为父类中是void而子类若overriding是不能改成int的)!
b对,process(int abc, int cba)与父类中的不是一个方法,典型的overloading!
c错,方法名和argument与父类一样,是想overriding,但父类方法中未抛出的异常子类不可抛出(反过来可以,父类抛出子类可以不抛出)!
d对,用c的判断法似乎d应该错,但RuntimeException是特殊的异常,可以理解为是系统缺省的,即即使方法后面不写,也认为可以抛出!
e错,很明显int类型就必须返回int值!
f对,同a,b的原理,典型的overriding!第二题,编译一下就知道了,如下:
F:\java\A.java:2: class B is public, should be declared in a file named B.java
public class B{ int y; public B(int y) { super(this.y); }}
^
F:\java\A.java:2: cannot reference this before supertype constructor has been called
public class B{ int y; public B(int y) { super(this.y); }}
^
F:\java\A.java:2: Object() in java.lang.Object cannot be applied to (int)
public class B{ int y; public B(int y) { super(this.y); }}
^
3 errors
从左到右!
还有上面两道题也解释一下
this.setLayout(new FlowLayout());这样才是流布局
至于为什么会现实成那个样子,我觉得这就是默认布局。
前面的题目同意楼上各位的解释