第4章 接口内部类和包.docx
- 文档编号:27394278
- 上传时间:2023-06-30
- 格式:DOCX
- 页数:39
- 大小:32.60KB
第4章 接口内部类和包.docx
《第4章 接口内部类和包.docx》由会员分享,可在线阅读,更多相关《第4章 接口内部类和包.docx(39页珍藏版)》请在冰豆网上搜索。
第4章接口内部类和包
第4章接口、内部类和包
一、选择题
1.接口Statement中定义的execute方法的返回类型是()。
A.ResultSet
B.int
C.boolean
D.受影响的记录数量
2.executeQuery方法返回的类型是()。
A.ResultSet
B.int
C.boolean
D.受影响的记录数量
3.executeUpdate返回的类型是()。
A.ResultSet
B.int
C.boolean
D.受影响的记录数量
4.接口RowSet继承了接口ResultSet可以调用RowSet中的方法()来填充其数据区。
A.Statement
B.ResultSet
C.update
D.populate
5.Java核心API有多少个包?
()
A.2
B.22
C.222
D.2222
6.Java的API文档是以什么格式提供的?
A.RTF
B.WORD
C.HTML
D.EXCEL
7.练习使用API文档,java.math包是完成什么功能的?
A.用户组件
B.数学计算
C.网络底层协议
D.图象处理
8.练习使用API文档,java.io包是完成什么功能的?
A.用户组件
B.数学计算
C.网络底层协议
D.图象处理
9.一个Java源文件中可以有()条package语句
A.1
B.2
C.3
D.不限制
10.如果有packagejava.abc.def.ghi则在windows操作系统中,ghi.java一定位于()路径下
A.java\
B.java\abc
C.java\abc\def
D.\java\abc\def
11.包语句可以放在()
A.源文件的任意位置
B.源文件的第一条语句
C.源文件的末尾
D.源文件的中间
12.一支源文件的第一条语句时packagejava.awt.image;如果源程序中需要使用java.awt包中的其他类.
A.不可以使用语句importjava.awt.image
B.必须使用语句importjava.awt.image
C.不必使用语句importjava.awt.image
D.使用语句importjava.awt.image会有编译错误
13.在Java中,若想利用包的特性,可使用()语句告诉编译器要使用的类所在的位置
A.import
B.package
C.extends
D.implements
14.下列叙述正确的是()
A.包名是类名的一部分
B.类名是包名的一部分
C.包名和类名没有关系
D.包名就是类名
15.如果java.abc.def中包含xyz类,则该类可做()
A.java.xyz
B.java.abc.xyz
C.java.abc.def.xyz
D.java.xyz.abc
16.如果像引入包中所有的类,可以使用通配符()
A.*
B..
C.?
D.$
17.下面是引入java.lang中所有类的语句是()
A.importjava.lang
B.importjava.lang.*
C.packagejava.lang
D.packagejava.lang.*
18.源程序Employee的第一条语句是packagepath.abc.FinanceDept则正确编译该文件后在()路径下产生Employee.class文件
A.path\
B.path\abc\
C.path\abc\Finance
D.eptD\
19.源程序Employee的第一条语句是packagepath.abc.FinanceDept则正确编译该文件后在path\abc\FinanceDept路径下产生()文件
A.Employee.exe
B.Employee.java
C.pathabcFinanceEmployee.exe
D.pathabcFinanceEmployee.java
20.创建包目录的编译命令选项是()
A.-a
B.-b
C.-c
D.-d
21.要想让编译器找到"当前"路径下的类,那么CLASSPATH应该是
A.CLASSPATH=/
B.CLASSPATH=/JAVA
C.CLASSPATH=.
D.CLASSPATH=*
22.Sring和StringBuffer是属于()包的。
A.java.awt
B.java.lang
C.java.util
D.java.string
23.不变长度字符串使用()处理。
A.char
B.Character
C.String
D.StringBuffer
24.可变长度字符串使用()处理。
A.char
B.Character
C.String
D.StringBuffer
25.字符串在内存中是()。
A.连续排列的
B.分散排列的
C.不一定
D.字符串短的时候是连续的
26.在对String类进行查找比较操作时,字符串的长度()。
A.不变
B.变长
C.变短
D.不一定
27.下面正确的创建空字符串的语句是()。
A.Strings
B.Strings=""
C.Strings=newString()
D.Strings
E.s=""
28.charchars[]={'a','b','c'};Strings2=newString(chars);s2代表的字符串是()。
A.a
B.b
C.c
D.abc
29.Strings2="abc";s2代表的字符串是()。
A.a
B.出错
C.c
D.abc
30.String的构造函数有()个。
A.1
B.2
C.3
D.4
31.返回字符串s中第3个字符的语句是()。
A.s.charAt(3)
B.s.charAt
(2)
C.s.charAt(4)
D.s.at(4)
32.截取当前字符串s从3到末尾的子串的语句是()。
A.s.left(3)
B.s.right(3)
C.s.subString(3)
D.s.subString(3,s.length())
33.String.replace(charchar1,charchar2);的意义是()。
A.所有char1换成char2
B.所有char2换成char1
C.第一个char1换成char2
D.第一个char2换成char1
34.String类中将当前字符串中的所有字符转换为小写形式的函数是()。
A.toLowerCase()
B.toUpperCase()
C.makeLower()
D.makeUpper()
35.Strings="Thisisthe";Stringt=s.concat("String.");t的内容是()
A.ThisisthString.
B.Thisisthe
C.String
D.StringThisisthe
36.Strings="Thisisthe";Stringt=s+"String";t的内容是()
A.ThisisthString
B.Thisisthe
C.String
D.StringThisisthe
37.Stringt="Thisisthe";Strings="String";t+=s;t的内容是()
A.ThisisthString
B.Thisisthe
C.String
D.StringThisisthe
38.Strings="Heis";Stringt=newStringBuffer("a").append(10).toString();s+=t+="yearsoldboy.";
t的内容是()
A.Heis
B.yearsoldboy
C.Heis10yearsoldboy.
D.出错
39.Strings="Heis";Stringt=
newStringBuffer(s).append(newStringBuffer("a")).append(10).append("yearsoldboy").toString();
t的内容是()
A.Heis
B.yearsoldboy
C.Heis10yearsoldboy.
D.出错
40.Java采用的是()程序设计方法
A.面向对象
B.面向过程
C.面向问题
D.面向结果
41.下列哪项不是OOP的三大技术()
A.封装
B.继承
C.重载
D.多态
42.面向对象的程序设计方法通常称做()
A.OOP
B.OPP
C.CPP
D.OOC
43.Java与C++的OOP能力略有差异,下列特性是Java不具备的特性的是()
A.封装
B.多态性
C.继承
D.多重继承
44.下列语句有可能产生不可意料的错误的是?
A.doublea=2e+28
B.doublea=2e+29
C.doublea=2e+30
D.inti=a
45.下面关于类的继承性的描述中,错误的是()。
A.继承是在已有的基础上生成新类的一种方法
B.Java语言要求一个子类只有一个父类
C.父类中成员的访问权限在子类中将被改变
D.子类继承父类的所有成员,但不包括私有的成员方法
46.在成员方法的访问控制修饰符中,规定访问权限包含该类自身,同包的其他类和其他包的该类子类的修饰符是()。
A.默认
B.protected
C.private
D.public
47.在类的修饰符中,规定只能被同一包类所使用的修饰符是()。
A.public
B.默认
C.final
D.abstract
48.下列关于子类继承父类的成员描述中,错误的是()。
A.当子类中出现成员方法头与父类方法头相同的方法时,子类成员方法覆盖父类中的成员方法。
B.方法重载是编译时处理的,而方法覆盖是在运行时处理的。
C.子类中继承父类中的所有成员都可以访问。
D.子类中定义有与父类同名变量时,在子类继承父类的操作中,使用继承父类的变量;子类执行自己的操作中,使用自己定义的变量。
49.下列关于继承性的描述中,错误的是()。
A.一个类可以同时生成多个子类
B.子类继承了父类中除私有的成员以外的其他成员
C.Java支持单重继承和多重继承
D.Java通过接口可使子类使用多个父类的成员
50.下列关于抽象类的描述中,错误的是()。
A.抽象类是用修饰符abstract说明的
B.抽象类是不可以定义对象的
C.抽象类是不可以有构造方法的
D.抽象类通常要有它的子类
51.下列哪个方法与方法publicvoidadd(inta){}为不合理的重载方法?
()
A.publicvoidadd(chara)
B.publicintadd(inta)
C.publicvoidadd(inta,intb)
D.publicvoidadd(floata)
52.下列关于构造方法的叙述中,错误的是()。
A.构造方法名与类名必须相同
B.构造方法没有返回值,且不用void声明
C.构造方法只能通过new自动调用
D.构造方法不可以重载,但可以继承
53.下面叙述中,错误的是()。
A.子类继承父类
B.子类能替代父类
C.父类包含子类
D.父类不能替代子类
54.下列对多态性的描述中,错误的是()。
A.Java语言允许方法重载与方法覆盖
B.Java语言允许运算符重载
C.Java语言允许变量覆盖
D.多态性提高了程序的抽象性和简洁性
55.下面关于接口的描述中,错误的是()。
A.一个类只允许继承一个接口
B.定义接口使用的关键字是interface
C.在继承接口的类中通常要给出接口中定义的抽象方法的具体实现
D.接口实际上是由常量和抽象方法构成的特殊类
56.欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的?
()
A.ArrayListmyList=newObject();
B.ArrayListmyList=newList();
C.ListmyList=newArrayList();
D.ListmyList=newList();
57.MAX_LENGTH是int型public成员变量,变量值保持为常量100,其定义是()。
A.publicintMAX_LENGTH=100;
B.finalpublicintMAX_LENGTH=100;
C.publicfinalintMAX_LENGTH=100;
D.finalintMAX_LENGTH=100;
二、填空题
1.在面向对象系统中,消息分为和两类。
2.类的访问控制符有和两种,类具有跨包访问性而类不能被跨包访问。
3.类成员的访问控制符有、、和默认四种。
4.public类型的类成员可被、同一包中的和不同包中的的代码访问引用。
5.protected类型的类成员可被、同一包中的和不同包中的的代码访问引用。
6.default类型的类成员只能被、同一包中的的代码访问引用。
7.private类型的类成员只能被其所在类中的代码访问引用,它只具有域访问性。
8.系统规定用表示当前类的构造方法,用表示直接父类的构造方法,在构造方法中两者只能选其一,且须放在第一条语句。
9.若子类和父类在同一个包中,则子类继承父类中的、和成员,将其作为子类的成员,但不能继承父类的成员。
10.若子类和父类不在同一个包中,则子类继承了父类中的和成员,将其作为子类的成员,但不能继承父类的和成员。
11.直接赋值给时,子类对象可自动转换为父类对象,赋值给时,必须将父类对象强制转换为子类对象。
12.Java的多态性主要表现在、和三个方面。
13.重写后的方法不能比被重写的方法有的访问权限,重写后的方法不能比被重写的方法产生更多的异常。
14.Java语言中,定义子类时,使用关键字来给出父类名。
如果没有指出父类,则该类的默认父类为。
15.Java语言中,重载方法的选择是在编译时进行的,系统根据、和参数顺序寻找匹配方法。
16.实现接口中的抽象方法时,必须使用的方法头,并且还要用修饰符。
17.接口中定义的数据成员均是,所有成员方法均为方法,且没有方法。
18.this代表的引用,super表示的是当前对象的直接父类对象。
19.如果一个类包含一个或多个abstract方法,则它是一个类。
20.Java不直接支持多继承,但可以通过实现多继承。
类的继承具有性。
21.没有子类的类称为,不能被子类重载的方法称为,不能改变值的量称为常量,又称为。
22.一个接口可以通过关键字extends来继承其他接口。
23.接口中只能包含类型的成员变量和类型的成员方法。
24.一般地,内部类又分为定义在方法体外的和定义在方法体内的两种。
25.静态内部类可直接通过外部类名引用,其一般格式是。
26.匿名类一般分为和类两种。
27.面向对象的软件设计中,根据目的不同模式可分为、和三种。
三、判断题
1.Java语言中,构造方法是不可以继承的。
()
2.子类的成员变量和成员方法的数目一定大于等于父类的成员变量和成员方法的数目。
()
3.抽象方法是一种只有说明而无具体实现的方法。
()
4.Java语言中,所创建的子类都应有一个父类。
()
5.调用this或super构造方法的语句必须放在第一条语句。
()
6.一个类可以实现多个接口,接口可以实现“多重继承”。
()
7.实现接口的类不能是抽象类。
()
8.使用构造方法只能给实例成员变量赋初值。
()
9.Java语言不允许同时继承一个类并实现一个接口。
()
10.Strings=newString("xyz");创建了两个StringObject。
()
四、简答题
1.String和StringBuffer的区别是什么?
2.HashMap和Hashtable的区别是什么?
3.abstractclass和interface有什么区别?
4.接口是否可继承接口?
抽象类是否可实现(implements)接口?
抽象类是否可继承实体类(concreteclass)?
5.List,Set,Map是否继承自Collection接口?
6.数组有没有length()这个方法?
String有没有length()这个方法?
7.Collection和Collections的区别。
8.是否可以继承String类?
说出ArrayList,Vector,LinkedList的存储性能和特性。
9.swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上?
10.Set里的元素是不能重复的,那么用什么方法来区分重复与否呢?
是用==还是equals()?
它们有何区别?
Set里的元素是不能重复的,那么用iterator()方法来区分重复与否。
equals()是判读两个Set是否相等。
11.写出下面程序运行的结果,并说明原因
publicclassJtest{
intm=1;
inti=3;
Jtest(){
m=2;
i=4;
}
publicstaticvoidmain(String[]args){
Jtestapp=newJtest();
System.out.println(app.m+","+app.i);
}
}
12.写出下面程序运行的结果,并说明原因
publicclassTest{
publicstaticvoidmain(String[]args){
Stringa=newString("A");
Stringb=newString("B");
oper(a,b);
System.out.print(a+","+b);
}
staticvoidoper(Stringc,Stringd){
c.concat("B");
d=c;
}
}
13.写出下面程序运行的结果,并说明原因
packageeintervie;
publicclassTest
{
publicstaticvoidmain(String[]args)
{
Stringa=newString("A");
Stringb=newString("B");
a=a.concat("aa");
System.out.println(a+","+b);
}
}
14.作用域public,private,protected,以及不写时的区别。
15.AnonymousInnerClass(匿名内部类)是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)?
16.什么是接口?
接口和抽象类有哪些相同之处和不同之处?
17.为什么能够声明接口变量?
接口变量能够获得什么样的值?
18.接口有哪些特点?
为什么需要声明借口?
接口是否具有继承性?
接口中能否写构造方法?
19.什么是单重继承?
什么是多重继承?
类的层次体系为什么需要多重继承?
单重继承有什么缺点?
既然有缺点,为什么Java仍然采用单重继承?
Java怎样实现多重继承?
20.类与类之间存在哪几种关系?
21.在什么情况下需要声明内部类?
内部类有哪些特性?
22.为什么是包?
为什么需要包机制?
Java有哪些包?
各有什么功能?
23.Java的API采用什么组织方式?
怎样使用Java定义好的类?
24.Java声明Object类的作用是什么?
Object类中声明了哪些方法?
Object类在Java类层次体系中的地位是怎样的?
25.Java为什么需要声明基本数据类型的包装类?
基本数据类型的包装类有哪些?
26.怎样将数值类型的数据转换成字符串?
怎样将字符串转换成数值类型的数据?
27.Java为什么要将Math类声明为最终类?
Math类中有哪些常用方法?
28.对数值﹑变量或对象进行比较操作,到底应该采用6个关系运算符还是调用equals()、compareTo()方法?
是否每个对象都可以调用equals()和compareTo()方法?
为什么?
这两个方法在进行比较操作时有什么差别?
它们在每个类中的含义都相同吗?
29.System类、Class类和Runtime类各有哪些功能?
在之前的程序中已用到这些类的哪些常量或方法?
30.怎样表示日期与时间数据?
怎样引用java.util包的类?
31.泛型类有什么作用?
在什么情况下需要使用泛型类?
五、分析题
1.分析下面的程序,写出运行结果。
publicclassXextendsTT{
publicstaticvoidmain(Stringargs[]){
Xt=newX("Tom");
}
publicX(Strings){
//super(s);
System.out.println("Howdoyoudo?
");
}
publicX(){
this("IamTom");
}
}
classTT{
publicTT(){
System.out.println("Whatapleasure!
");
}
publicTT(Strings){
this();
System.out.println("Iam"+s);
}
}运行结果是:
()
2.分析下面的程序,写出运行结果。
publicclassX{
privatestaticintcount;
privateStringname;
publicclassStudent{
privateintcount;
privateStringname;
publicvoidOutput(intcount){
count++;
this.count++;
X.count++;
X.this.count++;
System.out.println(count+""+this.count+""+X.count+""
+X.this.count++);
}
}
publicStudentaStu(){
returnnewStudent();
}
publicstaticvoidmain(Stringargs[]){
Xg3=newX
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第4章 接口内部类和包 接口 部类