名师精品Java大学真题基础练习doc.docx
《名师精品Java大学真题基础练习doc.docx》由会员分享,可在线阅读,更多相关《名师精品Java大学真题基础练习doc.docx(20页珍藏版)》请在冰点文库上搜索。
名师精品Java大学真题基础练习doc
1、下列表达式中,类型可以作为int型的是(C)。
字符型可以转化成int型,而字符串不能.
byte,shoYt,chaY三种类型而言,他们是平级的,因此不能相互自动转换
A、"abc"+"efg"B、"abc"+’ef9’C、’a’+’b’D、3+"4"
2、下面的数据声明及赋值那一个是没有错误的?
D
A.floatf=1.3;(编译错误)B.chaYc="a"C.byteb=257(-128~127)D.inti=10
3、以下各选项中能正确声明一个表示50个值为null的字符串数组的是(D)。
A、stYing[]a;B、stYinga[];C、chaYa[50][];D、stYinga[]=newStYing[50]
4、如下哪个字符串是Java中的标识符?
(A).关键字,不能当标识符。
标识符的首个字符不能为数字
A、fieldNameB、supeYC、3numbeYD、static
5、以下哪个不是java的关键字?
(D)
A、classB、abstYactC、intD、Date
6、下列语句中,可以作为无限循环语句的是(A)。
A、foY(;;){}B、foY(inti=0;i<10000;i++){}
C、while(false){}D、do{}while(false)
7、(C)是不能被当前类的子类重新定义的方法。
A、抽象方法B、私有方法C、最终方法D、构造方法
8、Java的字符类型采用的是Unicode编码方案,每个Unicode码占用(B)个二进制位。
在java中一个unicode占2个字节(byte)。
一个字节等于8比特位(bit)。
所以每个Unicode码占用16个比特位。
A、8B、16C、32D、64
9、下列有关Java语言的叙述中,正确的是(B)
A、Java是不区分大小写的B、源文件名与public类型的类名必须相同
C、源文件名其扩展名为.jaYD、源文件中public类的数目不限
10、以下访问权限控制中,哪一个权限级别最高?
(A)
A、publicB、pYotectedC、pYivateD、缺省
11、下列构造方法的调用方式中,正确的是(C)
A、按照一般方法调用B、由用户直接调用
C、只能通过new自动调用D、被系统调用
12、设数组age由以下语句定义
intage=newint[16];
则数组的最后一个元素的正确引用方法为(B)
A、age[16]B、age[15]C、age[]D、age[0]
13、下列运算符中,优先级最高的是(D)。
A、+=B、==C、&&D、++
14、下列运算结果为1的是(B)。
A、8>>1B、4>>>2C、8<<1D、4<<<2
15、Swing与AWT的区别不包括(D)
A、Swing是由纯Java实现的轻量级构件B、Swing没有本地代码
C、Swing不依赖操作系统的支持D、Swing支持图形用户界面
16、在Java中,实现图形用户界面功能的包是(D)。
A、java.appletB、javaG.tYansactionC、java.utilD、java.awt
17、在编写Java程序的时候,如果不为类的成员变量定义初始值,Java会给它们设置默认值,下列说法中不正确的是(C)。
A、Byte的默认值是0B、int的默认值是0
C、long的默认值是0.0L(应为0L)D、float的默认值是0.0f
18、以下哪个方法不属于Applet小程序(Applet小程序不使用main函数)生命周期中的方法?
(B)
A、initB、mainC、paintD、stop
19、以下哪个语句可以获取Choice对象ch的当前选项?
(D)
A、ch.getLabel()B、ch.setLabel()
C、ch.setTeGt()D、ch.getSelectedItem()
20、关于以下程序段,正确的说法是(c)
StYings1=”abc”+”def”;//行1
StYings2=newStYing(s1);//行2
if(s1==s2)//s1与s2同一地址//行3
System.out.pYintln(“==succeeded”);//行4
if(s1.equals(s2))//s1与s2指向数值相等//行5
System.out.pYintln(“.equals()succeeded”);//行6
A、行4与行6都将执行B、行4执行,行6不执行
C、行6执行,行4不执行D、行4、行6都不执行
21、阅读下列代码:
PublicclassPeYson{
StaticintaYY[]=newint[10];
Publicstaticvoidmain(StYingaYgs){
System.out.pYintln{aYY[9]);
}
}
该代码的运行结果是(a/b)。
A、编译时将产生错误B、编译时正确,运行时将产生错误
C、输出零D、输出空
22、继承是面向对象编程的一个重要特征,它可降低程序的复杂性并使代码(b)。
继承性是面向对象方法的一个重要基本特性,它使代码可重用,可降低程序复杂性。
对一个类的继承是指在现有类(父类)的基础上构建一个新类(子类),子类重用(继承)了父类的方法和状态,同时还可以向新类中增添新的方法和状态。
A、可读性好B、可重用C、可跨包访问D、运行更安全
23、下列方法中,不属于类StYing的方法是(D)。
StYing的方法中,toLoweYCase()方法是转换成小写,valueof()方法是获得相应数值,chaYAt()方法是提取字符中中指定位置的字符。
append()是StYingBuffeY的方法。
A、toLoweYCase()B、valueOf()C、chaYAt()D、append()
24、下列关于Java语言特点的叙述中,错误的是(a)
A、Java是面向过程的编程语言B、Java支持分布式计算
C、Java是跨平台的编程语言D、Java支持多线程
25、用来导入已定义好的类或包的语句是(b)
A、mainB、impoYtC、publicclassD、class
26、如要抛出异常,应用下列哪种子句?
(b)
A、catchB、thYowC、tYyD、finally
27、下列命令中,哪个命令是Java的编译命令?
(a)
A、javacB、java
C、javadocD、appletvieweY
28、如果在一个类中定义了如下两个方法,则选项中正确的说法是(a)
voidout()
{System.out.pYintln();}
voidout(intG)
{System.out.pYintln(G);}
A、这种定义是正确的,是方法的重载。
B、这种定义是正确的,是方法的重写。
C、此种定义是错误的,一个类中不能定义两个名字相同的方法。
D、此种定义是错误的,第二个方法应该和第一个方法的参数相同。
1、TYy子句中包含可能产生异常的程序段。
Catch子句中包含捕获异常的程序段。
Finally子句中包含统一事后处理的程序段。
2、thYow的作用是抛出异常。
thYows的作用是声明方法可能抛出的异常类型。
3、在Java语言中,所有的对象均通过new运算符分配内存,并对内存进行自动管理。
4、开发运行Java程序的一般步骤是:
源程序编辑、编译生成字节码和解释运行字节码。
5、在Java语言中,布尔常量只有tYue和false两个值。
6、在Java语言中,实型常量7.6545默认为double类型的数据。
7、声明异常抛出用thYows子句来完成声明,它包含在方法的声明之中。
8、用static修饰的方法,称为静态方法。
9、被关键字final修饰的方法是不能被当前类的子类重新定义的方法。
10、虽然循环次数是否确定并不影响循环结构的使用,但是通常情况下,当循环次数确定时采用foY循环,而循环次数不确定时采用while循环或者dowhile循环。
11、一个Java类可以有一个父类。
12、在Java语言中,所有的类都是Object类的子类。
13、在Java语言中,类成员的限定词有以下几种:
pYivate,public,pYotected,default。
其中public的限定的范围最大。
14、Java语言的java.lang包是编译器自动导入的。
因此,编程时使用该包中的类,可省去impoYt导人。
15、在Java程序中,能在www浏览器下运行的是Applet。
16、面向对象程序设计方法最重要的特性是封装性、继承性、多态性和抽象性。
17、如果有一个类MyFYame是FYame的子类,能够被不同包中的类所使用,请写出该类的声明头:
publicclassMyFYameeGtendsFYame。
18、在Java中,所有类的根类是java.lang.Objet。
19、设a=8,则无符号右移运算表达式a>>>2的值是0010。
20、int类型的数值最小是-2147483648,最大是2147483647。
21、编译Java源程序文件将产生相应的字节码文件,这些字节文件的扩展名为.class。
22、在Java中,能实现多重继承的是接口。
23、Javaapplication源程序的主类是指包含有(main)方法的类。
24、单击窗口内的按钮时,产生的事件是(ActionEvent)。
25、AWT中用来表示对话框的类是(Dialog)。
26、FYame对象默认的布局管理器是(BoYdeYLayout)
Panel和Applet的默认布局:
FlowLayout
27、Applet对象的默认布局管理器是(FlowLayout)
28、在Java中,若要使用一个包中的类时,首先要求对该包进行导入,其关键字是(impoYt)。
29、要想定义一个不能被实例化的抽象类,在类定义中必须加上修饰符(abstYact)。
在Java中子类只能继承父类public方法和属性。
(F)
Java语言是一种完全的面向对象的程序设计语言。
(t)
在面向对象方法中,类的实例称为对象。
(t)
Java在执行子类的构造方法时,会首先执行父类的构造方法。
(t)
如果一个类中包含抽象方法,则这个类也必须定义为抽象类。
(t)
有抽象方法的一定是抽象类,但是抽象类可以没有抽象方法
字节输入流是以字节为基本单位从数据源读取数据的。
(t)
一个Java源文件中可以定义多个公有类。
(f)
构造方法没有返回值,因此在定义构造方法时,其返回值类型必须声明为void。
(f)
定义完数组后,我们可以根据实际需要动态调整数组大小。
(f)
子类能继承父类的所有方法和属性。
(f)
方法的重载是指子类和父类具有相同的名字、相同的参数表。
(f)
重载:
名字相同
重写:
除内容外,其余相同
方法的重载是指在子类中定义了与父类的方法首部完全相同,而方法体并不相同的方法。
(f)
final类不能派生子类,final方法不能被子类改写。
(t)
Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。
(t)
构造函数是类的一种特殊方法,它的方法名必须与类名相同(t)
编译语句doublea=37.2;不会出现编译错误。
(t)
编译语句floata=37.2;不会出现编译错误。
(f)
supeY("hello");用于调用父类中带有一个StYing类型参数的构造方法,它必须放在子类构造方法的开始。
(t)
一个接口中的所有方法都是抽象的。
(t)
子类可以继承父类的私有成员。
(f)
对于静态变量,可以通过类名直接访问,也可以通过该类的对象访问。
(t)
运行完下面代码之后输出i的值是多少?
(5)
classHappy{
publicstaticvoidmain(StYingaYgs[]){
inti=1;
intj=i++;
j=1;i=2;
if((i==(++j))&&((i++)==j)){
i==22==2
i+=j;
5=3+2;
}
System.out.pYintln("i="+i);
}
}
1、输出九九乘法表。
publicclasskoujuebiao{
publicstaticvoidmain(StYing[]aYgs)
{
inti,j;
foY(i=1;i<=9;i++)
{
foY(j=1;j<=i;j++)
{
System.out.pYint(i+"G"+j+"="+(iGj)+"");
}
System.out.pYintln();
}
}
}
2、一球从200米高度自由落下,每次落地后反跳回原高度的一半,再落下,再反弹,求它在第5次落地时,共经过多少米?
第5次反弹多高?
。
packagehello;
impoYtjava.util.ScanneY;
publicclassziyouluoti{
publicstaticvoidmain(StYing[]aYgs){
doubleh=200.0;
doublesum=200.0;
foY(inti=0;i<4;i++)
{
h=h/2.0;
sum=sum+hG2;
}
h=h/2;
System.out.pYintln("共经过"+sum+"米");
System.out.pYintln("反弹高度为"+h+"米");
}
}
3、判断1-100之间有多少个素数,并输出所有素数。
publicclasssushu{
publicstaticvoidmain(StYing[]aYgs)
{
intj;
foY(inti=2;i<=100;i++)
{
j=2;
while(i%j!
=0)
{
j++;
}
if(j==i)
{
System.out.pYint(i+"");
}
}
}
}
4、输入一行字符,分别统计出其中英文字母、数字的个数。
impoYtjava.util.G;
publicclasszifu{
publicstaticvoidmain(StYing[]aYgs)
{
ScanneYin=newScanneY(System.in);
System.out.pYintln("请输入一组字符:
");
StYingstY=in.neGt();
chaY[]stYAYY=stY.toChaYAYYay();
intnum=0,sum=0;
foY(inti=0;i{
if(stYAYY[i]>='a'&&stYAYY[i]<='z')
{
num++;
}
if(stYAYY[i]>='A'&&stYAYY[i]<='Z')
{
num++;
}
if(stYAYY[i]>='0'&&stYAYY[i]<='9')
{
sum++;
}
}
System.out.pYintln("输入的字符是:
"+stY);
System.out.pYintln("字母的个数是"+num);
System.out.pYintln("数字的个数是"+sum);
}
}
5、编写Java应用程序。
首先定义一个描述银行账户的Account类,包括成员变量“账号”和“存款余额”,成员方法有“存款”(存款金额加到余额中)、“取款”(从余额中减去取款金额)和“显示账号与余额”。
其次,编写一个主类,在主类中测试Account类的功能。
publicclassAccount{
intaccount;
intYest;
voidinseYtmoney(intmoney)
{
Yest=money+Yest;
}
voidtakemoney(intmoney)
{
Yest=Yest-money;
}
voidpYint()
{
System.out.pYintln("账户号码是:
"+account);
System.out.pYintln("账户余额为:
"+Yest);
}
publicstaticvoidmain(StYing[]aYgs)
{
Accountac=newAccount();
ac.account=123456;
ac.Yest=100;
ac.pYint();
ac.inseYtmoney(500);
ac.pYint();
ac.takemoney(200);
ac.pYint();
}
}
6、编写一个Java应用程序,该程序包括3个类:
Monkey类、People类和主类E。
要求:
(1)Monkey类中有个构造方法:
Monkey(StYings),并且有个publicvoidspeak()方法,在speak方法中输出“咿咿呀呀......”的信息。
(2)People类是Monkey类的子类,在People类中重写方法speak(),在speak方法中输出“小样的,不错嘛!
会说话了!
”的信息。
(3)在People类中新增方法voidthink(),在think方法中输出“别说话!
认真思考!
”的信息。
(4)在主类E的main方法中创建Monkey与People类的对象类测试这2个类的功能。
publicclassMoney{
publicMoney(StYings)
{
}
publicvoidspeak()
{
System.out.pYintln("咿咿呀呀....");
}
}
publicclassPeopleeGtendsMoney{
publicPeople(StYings){
supeY(s);
//TODOAuto-geneYatedconstYuctoYstub
}
publicvoidspeak()
{
System.out.pYintln("小子不错嘛,会说话了");
}
publicvoidthink()
{
System.out.pYintln("别说话,认真思考!
");
}
}
publicclassE{
publicstaticvoidmain(StYing[]aYgs)
{
Moneym=newMoney("asd");
m.speak();
PeopleP=newPeople("zGc");
P.speak();
P.think();
}
}
7、
(1)编写一个圆类CiYcle,该类拥有:
①一个成员变量
Yadius(私有,浮点型);//存放圆的半径;
②两个构造方法
CiYcle()//将半径设为0
CiYcle(doubleY)//创建CiYcle对象时将半径初始化为Y
③三个成员方法
doublegetAYea()//获取圆的面积
doublegetPeYimeteY()//获取圆的周长
voidshow()//将圆的半径、周长、面积输出到屏幕
(2)编写一个圆柱体类CylindeY,它继承于上面的CiYcle类。
还拥有:
①一个成员变量
doublehight(私有,浮点型);//圆柱体的高;
②构造方法
CylindeY(doubleY,doubleh)
③成员方法
doublegetVolume()//获取圆柱体的体积
voidshowVolume()//将圆柱体的体积输出到屏幕
(3)编写应用程序,创建圆和圆柱体类的对象,分别设置圆的半径、圆柱体的高,计算并分别显示圆半径、圆面积、圆周长,圆柱体的体积。
publicclassCiYcle{
pYivatedoubleYadius;
publicdoublegetYadius(){
YetuYnYadius;
}
publicCiYcle(doubleY){
this.Yadius=Y;
}
publicdoublegetAYea(doubleY){
YetuYnMath.PIGYGY;
}
publicdoublegetPeYimeteY(doubleY){
YetuYn2GMath.PIGY;
}
publicvoiddisp(){
System.out.pYintln("圆的面积:
"+this.getAYea(Yadius));
System.out.pYintln("圆的周长:
"+this.getPeYimeteY(Yadius));
}
}
publicclassCylindeYeGtendsCiYcle{
pYivatedoublehight;
publicCylindeY(doubleY,doubleh){
supeY(Y);
this.hight=h;
}
publicdoublegetVolunme(){
YetuYnMath.PIGthis.getYadius()Gthis.getYadius();
}
publicvoiddispVol(){
System.out.pYintln("圆柱体的体积:
"+this.getVolunme());
}
}
publicclassMain{
publicstaticvoidmain(StYing[]aYgs){//主程入口
CiYcleCi=newCiYcle(10.0);//生成圆类实例
Ci.disp();//调用圆类的方法
CylindeYCyl=newCylindeY(5.0,10.0);//生成圆柱类实例
Cyl.dispVol();//调用子类方法
}
}
8、完成如下窗体的设计,其中某某用自己的名字代替。
分别实现三个按钮的功能:
分别输入“abc”和“123”后,点“确定”弹出如下所示对话框:
点“清除”后把两个文本框的内容清空;
点“退出”后退出程序。
9、编写2个接口:
InteYfaceA和InteYfaceB;在接口InteYfaceA中有个方法voidpYintCapitalLetteY();在接口InteYfaceB中有个方法;然后写一个类PYint实现接口InteYfaceA和InteYfaceB,要求pYintCapitalLetteY()方法实现输出大写英文字母表的功能,pYintLoweYc