}
}
class Square extends Rectangle{
float length;
Square(float len){
super(len,len);
length=len;
}
float getArea(){
return super.getArea();
}
}
public class TestRectangle{
public static void main(String[] args){
Square sq=new Square(5.2f);
}
}
类与对象习题
一、选择题
1 定义类头时,不可能用到的关键字是( B)。
A) class B)private C)extends D)public 2.下列类定义中,不正确的是(C)。 A) class x { .... } B) class x extends y { .... }
C) static class x implements y1,y2 { .... } D) public class x extends Applet { .... } 3.下列类头定义中,错误的是( A)。
A)public x extends y {...} B) public class x extends y {...}
C)class x extends y implements y1 {...} D)class x {...}
4.设 A为已定义的类名,下列声明A类的对象a的语句中正确的是( D)。 A) float A a; B) public A a=A( ); C) A a=new int( ); D) static A a=new A( );
5.设 A为已定义的类名,下列声明A类的对象a的语句中正确的是(A)。 A) public A a=new A( ); B) public A a=A( ); C) A a=new class( ); D) a A;
6.设 X 、Y 均为已定义的类名,下列声明类X的对象x1的语句中正确的是(C)。 A) public X x1= new Y( ); B) X x1= X ( ); C) X x1=new X( ); D) int X x1;
7. 设X 、Y为已定义的类名,下列声明X类的对象x1的语句中正确的是(A)。 A) static X x1; B) public X x1=new X(int 123); C) Y x1; D) X x1= X( );
8.通过类MyClass中的不含参数的构造方法,生成该类的一个对象obj,可通过以下语句实现: _______________________________。 (MyClass obj=new MyClass( );)
9. 设i , j为类X中定义的int型变量名,下列X类的构造方法中不正确的是( A)。 A) void X(int k ){ i=k; } B) X(int k ){ i=k; } C) X(int m, int n ){ i=m; j=n; } D) X( ){i=0;j=0; } 10. 有一个类A,以下为其构造方法的声明,其中正确的是( A )。 A)public A(int x){...} B)static A(int x){...} C)public a(int x){...} D)void A(int x){...} 11. 有一个类A,以下为其构造方法的声明,其中正确的是( B )。
A)void A(int x){...} B)A(int x){...} C)a(int x){...} D)void a(int x){...}
12. 设i、j、k为类X中定义的int型变量名,下列类X的构造方法中不正确的是( B )。 A) X( int m){ ... } B) void X( int m){ ... } C) X( int m, int n){ ... } D) X( int h,int m,int n){ ... }
13. 设i , j为类X中定义的double型变量名,下列X类的构造方法中不正确的是(A )。 A) double X(double k ){ i=k; return i; } C) X( ){i=6;j=8; } B) X(double m, double n ){ i=m; j=n; } D) X(double k ){ i=k; }
14. 设a , b为类MyClass中定义的int型变量名,下列MyClass类的构造方法中不正确的是(A)。
double MyClass(double k ){ a=k; return a; } MyClass( ){a=6;b=8; }
MyClass (double m, double n ){ a=m; b=n; } MyClass (double k ){ a=k; }
15 定义类头时,不可能用到的关键字是(A)。
A)protected B) class C)extends D)public 16.下列类头定义中,错误的是(A)。
A)public TestClass extends y {...} B) public class TestClass extends y {...}
C)class TestClass extends y implements y1 {...} class TestClass {...}
17.设 B为已定义的类名,下列声明B类的对象b的语句中正确的是(D)。 A) float B b; B) public B b=B( ); C) B b=new int( ); D) static B b=new B( );
18.设 ClassA为已定义的类名,下列声明ClassA类的对象ca的语句中正确的是(A)。 A)public ClassA ca=new ClassA( ); B) public ClassA ca=ClassA( ); C) ClassA ca=new class( ); D) ca ClassA;
19.设 A 、B 均为已定义的类名,下列声明类A的对象a1的语句中正确的是(C)。 A) public A a1= new B( ); B) A a1= A ( ); C) A a1=new A( ); D) int A a1;
20. 设A 、B为已定义的类名,下列声明A类的对象a1的语句中正确的是(A)。 A) static A a1; B) public A a1=new A(int 123); C) B a1; D) A a1= A( );
21.通过类A中的不含参数的构造方法,生成该类的一个对象a,可通过以下语句实现: _______________________________。 (A a=new A( );)
22. 设m , n为类A中定义的int型变量名,下列A类的构造方法中不正确的是( A)。 A) void A(int k ){ m=k; } B) A(int k ){ m=k; }