java测试习题.docx
- 文档编号:4759411
- 上传时间:2022-12-08
- 格式:DOCX
- 页数:9
- 大小:21.44KB
java测试习题.docx
《java测试习题.docx》由会员分享,可在线阅读,更多相关《java测试习题.docx(9页珍藏版)》请在冰豆网上搜索。
java测试习题
JAVA基础测试题姓名:
一.简答题
1.面向对象的软件开发方法用什么把数据和基于数据的操作封装在一起?
(类)
2.在一个类定义中,用什么描述对象的状态?
用什么描述对象的行为?
(属性和方法)
答:
成员变量成员方法
3.什么方法是一个特殊的方法,用于对对象进行初始化?
(构造方法)
4.一个源程序文件中,能有多于一个的public类吗?
()
答:
不能,只能有一个public类而且位于主控制类中。
5.构造方法的方法名可由编程人员任意命名吗?
()
答:
不可以。
构造方法名要求与类名一致,不能使用系统关键字。
6.类的构造方法名必须和类名相同吗?
()
答:
必须。
7.构造函数有返回值吗?
()
答:
没有。
8.构造函数可以重载吗?
()
答:
可以被重载,但不能被继承。
9.如果一个类定义中没有定义构造方法,该类有构造函数吗?
答:
有。
有默认的系统提供的构造函数,只是该方法没有参数,方法体为空。
10.如果一个类定义中已经定义了构造方法,java还会给它定义缺省的构造方法吗?
()
答:
不会。
当类中一个构造方法也没有时,系统才自动提供缺省构造方法。
11.类的访问控制权有哪两种?
(publicfriendly)
答:
共有的非公有的。
12.用什么修饰符修饰的方法称为静态方法?
用什么修饰符修饰的属性称为静态属性?
()
答:
static
13.静态属性和静态方法仅属于类的一个具体对象吗?
它属于谁?
答:
不属于属于类是类中共有的
14.static变量能是private变量吗?
()
答:
能。
15.使用静态成员都能以什么做前缀?
(对象名类名)
答:
不能以数字开头,可以以字母或下划线
16.static方法中能有this引用吗?
(不能)this是动态的
17.非static方法中可以有this引用吗?
(可以)
18.static方法能处理非static成员吗?
(不能)
19.非static方法能处理static成员吗?
(能)
20.类的私有属性和私有方法能不能被其子类直接访问?
(不能)
二、选择题
1.Java语言的类间的继承关系是(B)。
A)多重的B)单重的C)线程的D)不能继承
2.以下关于Java语言继承的说法正确的是(C)。
A)Java中的类可以有多个直接父类B)抽象类不能有子类C)Java中的接口实现多继承(不支持)D)最终类可以作为其它类的父类
3.现有两个类A、B,以下描述中表示B继承自A的是(D)。
A)classAextendsBB)classBimplementsA
C)classAimplementsBD)classBextendsA
4.下列选项中,用于定义接口的关键字是(A)。
A)interfaceB)implementsC)abstractD)class
5.下列选项中,用于实现接口的关键字是(B)。
A)interfaceB)implementsC)abstractD)class
6.Java语言的类间的继承的关键字是(B)。
A)implementsB)extendsC)classD)public
7.以下关于Java语言继承的说法错误的是(A)。
A)Java中的类可以有多个直接父类B)抽象类可以有子类C)Java中的接口支持多继承D)最终类不可以作为其它类的父类
8.若a和b均是整型变量并已正确赋值,正确的switch语句是(D)。
(switch接受int类型以下的数据类型)
A)switch(a+b);{......}B)switch(a+b*3.0){......}
C)switcha{......}D)switch(a%b){......}
9.现有类A和接口B,以下描述中表示类A实现接口B的语句是(A)。
A)classAimplementsBB)classBimplementsA
C)classAextendsBD)classBextendsA
10.下列选项中,定义抽象类的关键字是(C)。
A)interfaceB)implementsC)abstractD)class
11.下列选项中,定义最终类的关键字是(D)。
A)interfaceB)implementsC)abstractD)final
12.下列选项中,哪个是java语言所有类的父类(C)
A)StringB)VectorC)Object(基类)D)KeyEvent
13.java语言中,用于判断某个对象是否是某个类的实例的运算符是(A)
A)instanceofB)+C)isinstanceD)&&
14.下列选项中,表示数据或方法可以被同一包中的任何类或它的子类访问,即使子类在不同的包中也可以的修饰符是(B)
A)publicB)protectedC)privateD)final
15.下列选项中,表示数据或方法只能被本类访问的修饰符是(C)
A)publicB)protectedC)privateD)final
16.下列选项中,接口中方法的默认可见性修饰符是(A)
A)publicB)protectedC)privateD)final
17.下列选项中,表示终极方法的修饰符是:
(B)
A)interfaceB)finalC)abstractD)implements
18.下列选项中,定义接口MyInterface的语句正确的是:
(A)
A)interfaceMyInterface{}B)implementsMyInterface{}
C)classMyInterface{}D)implementsinterfaceMy{}
19.如果子类中的方法mymethod()覆盖了父类中的方法mymethod(),假设父类方法头部定义如下:
voidmymethod(inta),则子类方法的定义不合法的是:
(C)
A)publicvoidmymethod(inta)B)protectedvoidmymethod(inta)
C)privatevoidmymethod(inta)D)voidmymethod(inta)
(子类访问权限小于父类)
三、填空题
1.如果子类中的某个变量的变量名与它的父类中的某个变量完全一样,则称子类中的这个变量__。
(覆盖/隐藏)____了父类的同名变量
2.属性的隐藏是指子类重新定义从父类继承来的(同名变量或属性)__________。
3.如果子类中的某个方法的名字、返回值类型和________与它的父类中的某个方法完全一样,则称子类中的这个方法覆盖了父类的同名方法。
(参数列表)
4.Java仅支持类间的____重继承。
(单)
5.抽象方法只有方法头,没有________。
(方法体)
6.Java语言的接口是特殊的类,其中包含______常量和_______方法。
(静态终极)(抽象)
7.接口中所有属性均为____静态的__、_终极的____和__抽象__的。
(属性不是方法)
8.如果接口中定义了一个方法methodA(),一个属性attA,那么一个类ClassA要实现这个接口的话,就必须实现其中的_______方法。
(methodA方法)
9.一个类如果实现一个接口,那么它就必须实现接口中定义的所有方法,否则该类就必须定义成________的。
(抽象的)(相当于对接口进行拆分)
10.如果子类中的某个方法的名字、__________和参数列表与它的父类中的某个方法完全一样,则称子类中的这个方法覆盖了父类的同名方法。
(返回值类型)
11.Java仅支持类间的单重继承,接口可以弥补这个缺陷,实现_____重继承(多)
12.在方法头用abstract修饰符进行修饰的方法叫做________方法。
(抽象)
13.Java语言中用于表示类间继承的关键字是___________。
(extends)
14.接口中所有方法均为________和________的。
(抽象的公有的)
15.Java语言中,表示一个类不能再被继承的关键字是___final_____。
()
16.Java语言中,表示一个类A继承自父类B,并实现接口C的语句是
_classA_extendsBimplementsC____________。
17.如果子类中的方法compute()覆盖了父类中的方法compute(),假设父类的compute()方法头部有可见性修饰符public,则methodS()的可见性修饰符必须是______public____。
(子类访问权限不能严于父类)
四.根据题意,写结果
1、以下代码的输出结果是_______j_________。
inti=9;
charc=’a’;
chard=(char)(c+i);
System.out.println(d);
2、面代码执行完后的输出是_____bis:
false_____-。
intx=3;
inty=4;
booleanb=true;
System.out.println("bis:
"+(b==(y 3、表达式(-100%3)的值是____-1____。 4、intx=2,y=4,z=3则x>y&&z>y的结果是_______false__________。 5、写出定义双精度浮点型常量PI,值为3.1415926的语句: finaldoublePI=3.1415926;(用final修饰常量名大写) 6、在Java语言中,逻辑常量只有true和_____false______两个值。 7、表达式1/2*3的计算结果是_____0____。 8、执行以下程序段后: a=___6_____,b=______18__。 inta=5,b; b=++a*3;(注: a++是先用后加,++a是先加后用) 9、Java中的的字符使用的是16位的_Unicode_____编码。 10、Java语言中的浮点型数据根据数据存储长度和数值精度的不同,进一步分为float和___double_______两种具体类型。 11、当整型变量n的值不能被13除尽时,其值为false的Java语言表达式是: (n%13==0)? true: false; if((n%3)! =0)returnfalse; 12、表达式3/6*5的计算结果是___0_____。 13、设x,y,max,min均为int型变量,x、y已赋值。 用三目条件运算符,求变量x、y的最大值和最小值,并分别赋给变量max和min,这两个赋值语句分别是max=x>y? x: y;_________和___min=x x: y;_____。 14、若a,b为int型变量且已分别赋值为2,4。 表达式! (++a! =b--)的值是_____false___。 15、若a,b为int型变量且已分别赋值为2,6。 表达式(a++)+(++b)+a*b的值是___30_____。 五.选择题 1、下列变量定义错误的是。 D A)inta;B)doubleb=4.5;C)booleanb=true;D)floatf=9.8; 2、下列数据类型的精度由高到低的顺序是: B a)float,double,int,long b)double,float,int,byte c)byte,long,double,float d)double,int,float,long 3、执行完下列代码后,A inta=3; charb='5'; charc=(char)(a+b); c的值是? A)’8’b)53c)8d)56 4、Unicode是一种___C_____ A)数据类型B)java包C)字符编码D)java类 5、6+5%3+2的值是______D_____ A)2B)1C)9D)10 6、下面的逻辑表达式中合法的是____C______(逻辑表达式两边连接boolean表达式) A)(7+8)&&(9-5)B)(9*5)||(9*7)C)9>6&&8<10D)(9%4)&&(8*3) 7、java语言中,占用32位存储空间的是_____D_____。 A)long,doubleB)long,floatC)int,doubleD)int,float 8、假设inta=1,b=2,c=3,以下语句正确的是___D_______。 A)c=c/float(a/b)b)c=c/((floata)/b) c)c=(float)c/(a/b)d)c=c/(int)(a/(float)b) (大给小,精度丢失;小给大,强制转换) 9、2|3&5的值是__C。 (&优先级高于|) A)1B)2C)3D)5 10、指出下列正确的语句: D A)bytei=389;B)longlv=i*3+4.5; C)intx=87L;D)longl=10; 11、指出下列类型转换中正确的是__________A____。 A)inti=’A’B)longL=8.4fC)inti=(boolean)8.9D)inti=8.3 12、以下的选项中能正确表示Java语言中的一个整型常量的是(B)。 A)12.B)-20C)1,000D)456 13、以下选项中,合法的赋值语句是(B)。 A)a==1;B)++i;C)a=a+1=5;D)y=int(i); 14、若所用变量都已正确定义,以下选项中,非法的表达式是(C)。 A)a! =4||b==1B)'a'%3C)'a'=1/2D)'A'+32 15、若有定义inta=2;则执行完语句a+=a-=a*a;后,a的值是(A)。 A)0B)4C)8D)–4 16、下列程序段执行后t1的结果是(B)。 intx1=9,x2=6,t1; t1=x1>x2? x1: x2;A)6B)9C)11D)3 17、对于一个三位的正整数n,取出它的十位数字k(k为整型)的表达式是(A)。 A)k=n/10%10 B)k=(n-n/100*100)%10取得是个位数字 C)k=n%10 D)k=n/10 18、现有一变量声明为booleanaa;下面赋值语句中正确的是(A)。 A)aa=false;B)aa=False;C)aa="true";D)aa=0; 19、设有定义inti=6;,则执行以下语句后,i的值为(C)。 i+=i-1;A)10B)121C)11D)100 20、下列语句序列执行后,ch1的值是(B)。 charch1=’A’,ch2=’W’; if(ch1+2 21、下列语句序列执行后,i的值是(D)。 inti=8,j=16; if(i-1>j)i--;elsej--; A)15B)16C)7D)8 22、设有定义floatx=3.5f,y=4.6f,z=5.7f;则以下的表达式中,值为true的是(B)。 A)x>y||x>zB)x! =y C)z>(y+x)D)x (x 23、下列程序段执行后b3的结果是(C)。 booleanb1=true,b2,b3;(默认false) b3=b1? b1: b2; A)0B)1C)trueD)false 24、设有定义inti=123;longj=456;下面赋值不正确的语句是(D)。 A)j=i;B)j=(long)i;C)i=(int)j;D)i=j; 25.请问下列哪些是关于重载的正确描述? B A、重载的方法和被重载的方法必须具有相同的方法名,参数列表和返回值类型。 B、构造函数可以重载但是main()方法不可以重载 C、重载的方法不能被private来修饰 D、重载的方法的访问范围不能比被重载的方法访问范围大。 26.关于接口的定义和实现,以下描述正确的是: A、D A.接口是一个特殊的类,接口中的域(即属性)都是常量,接口中的方法都是抽象方法 B.接口中定义的变量都必须写明publicstaticfinal,接口中的方法也必须声明为publicabstract不可以default。 C.如果一个接口由多个类来实现,则这些类在实现该接口中的方法时应采用统一的代码 D.如果一个类实现一个接口,则必须实现该接口中的所有方法,但方法一定要声明为public. 27.下列关于抽象类的说法哪个是正确的? C A.某个抽象类的父类是抽象类,则子类必须重载父类的所有抽象方法;(重构父类所有方法,重载不需要) B.接口和抽象类是同一回事; C.绝对不能用抽象类去创建对象; D.抽象类中不可以有非抽象方法。 六.编程题 实现一个名为Person的类和它的子类Employee,Manager是Employee的子类,设计一个接口Add用于涨工资,普通员工一次能涨10%,经理能涨20%。 具体要求如下: (1)Person类中的属性有: 姓名name(String类型),地址address(String类型),定义该类的构造方法; (2)Employee类中的属性有: 工号ID(String型),工资wage(double类型),工龄(int型),定义该类的构造方法; (3)Manager类中的属性有: 级别level(String类型)定义该类的构造方法; (4)编写一个测试类,产生一个员工和一个经理给该员工和经理涨工资,并输出其具有的信息。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 测试 习题