版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、下列关于java语言特点描述错误的是A。Java语言不支持指针B。Java具有自动垃圾回收的机制C.Java只能运行在Window和Linux平台D.Java允许多个线程同时执行2下列关于JDK的说法中,错误的是?A.JDK是Java开发工具包的简称B。JDK包括Java编译器、Java文档生成工具、Java打包工具等C。安装JDK后,还需要单独安装JRED。JDK是整个Java的核心答案:C解析:SUN公司提供了一套Java开发环境,简称JDK(JavaDevelopmentKit),它是整个Java的核心,其中包括Java编译器、Java运行工具、Java文档生成工具、Java打包工具等。JDK工具中自带了一个JRE工具,也就是说开发环境中包含运行环境,这样一来,开发人员只需要在计算机上安装JDK即可,不需要专门安装JRE工具了。3下面关于path环境变量的说法中,错误的是?()A。path环境变量是系统环境变量中的一种,它用于保存一系列的路径,每个路径之间以分号分隔B。在命令行窗口输入“setpath"命令,可以查看当前系统的path环境变量C。在命令窗口对环境变量进行的任何修改只对当前窗口有效,一旦关闭窗口,所有的设置都会被取消D。配置系统环境变量时以英文半角逗号(,)分隔每一个路径答案:D解析:配置系统环境变量时时以英文半角分号(;)分隔每一个路径的。4安装好JDK后,在其bin目录下有许多exe可执行文件,其中java.exe命令的作用是以下哪一种()A.Java文档制作工具B。Java解释器C.Java编译器D。Java启动器答案:B1下列选项中,哪一个是单行注释的符号?()A.\\B。//C./D.\答案:B解析://双斜杠表示注释单行代码2下列常量中,属于整型常量的是?()A.198B。2e3fC.trueD.null答案:A解析:2e3f属于浮点数常量,true属于布尔常量,null属于null常量3下列选项中,哪个是程序的运行结果classTest{publicstaticvoidmain(String[]args){inta=3;intb=6;System。out.print(a==b);System。out。print(a<b);System.out。print(a!=b);System。out.print(a>=b);}}A。falsefalsetruefalseB.falsefalsetruetrueC.falsetruetruefalseD.truefalsefalsetrue答案:C解析:3==6(错),3〈6(对),3!=6(对),3〉=6(错)4若x=6,y=5则表达式intmax=x〉y?x:y的结果为()A。6B.5C。trueD.false答案:A解析:三元表达式语法结构:判断条件?表达式1:表达式2当判断条件成立时,运算结果为表达式1的值,否则结果为表达式2的值5请阅读下面的程序片段booleanb=true;if(b=false){System。out。println(”a");}elseif(b){System。out。println(b);}elseif(!b){System。out.println(”c");}else{System。out.println(”d");}程序的执行结果是()A。aB。bC。cD。d答案:C解析:条件语句的值为false,所以值为false的语句才可以输出,这里用到了逻辑运算符!(非)即!true的值为false,因此输出结果是c6请阅读下面的程序publicclassSwitchDemo3{publicstaticvoidmain(String[]args){charc=‘B’;switch©{case‘A':System。out。println(“优");break;case‘B':System。out.println(“良”);break;case‘C’:System.out。println(“差”);break;}}}下列选项中,哪一个才是程序的运行结果A.优B。良C.差D.编译失败答案:B解析:charc=’B’与case‘B’相匹配,因此输出结果为“良”7请阅读下面的程序PublicclassTest{publicstaticvoidmain(String[]args){inta=0;intb=0;for(inti=1;i<=5;i++){a=i%2;while(a--〉=0){b++;}}System。out.println("a=”+a+",b="+b);}}下列选项中,哪一个是正确的运行结果()A.a=8,b=—2B.a=—2,b=8C.a=3,b=0D。a=0,b=3答案:B解析:本题中有两个循环语句,分别是外层循环的for语句和内层循环的while语句,首先程序会执行for循环中的语句,并执行循环体中的表达式a=i%2,计算出a的值,然后在进入while循环计算b的值,循环往复直到外层循环条件i>5为止8阅读下面的程序publicclassTest{publicstaticvoidmain(String[]args){for(intx=0;x〈=3;x++){continue;System.out。print(x%2);}}}运行结果正确的是A.跳出循环,无输出B。0121C。01D。0123答案:A解析:continue语句的作用是终止本次循环,因此contine后的代码永远不会被执行,都是无效代码9____关键字用于包的声明答案:package解析:10【】关键字用于引入包答案:import11若x=2,则表达式(x++)/3的值是【】答案:012若inta=2;a+=3;执行后,变量a的值为【】答案:513方法重载的条件是:方法名相同,【】不相同答案:参数列表解析:方法的重载与返回值类型无关,它只有两个条件,一是方法名相同,二是参数列表(参数个数或参数类型)不相同14定义一个方法时,要有访问修改符、返回值类型、方法名、【】答案:参数列表解析:方法的定义比较严格,必须要有访问修饰符、返回值类型、方法名称、参数列表(参数类型、参数名称)“隐藏对象的属性和实现细节,仅对外提供公有的方法"描述的是面向对象的哪个特征()A.封装B.继承C。多态D。以上都不是答案:A解析:封装是面向对象的核心思想,将对象的属性和行为封装起来,不需要让外界知道具体实现细节,这就是封装思想。2下列选项中,不属于面向对象特征的是()。A.继承性B。封装性C.跨平台性D.多态性答案:C解析:面向对象有三种特性,分别是封装性、继承性和多态性。跨平台性是Java语言的特点,而不是面向对象的特征。3请阅读下面的代码classA{intx;staticinty;voidfac(Strings){System.out.println(“字符串:”+s);}}下列选项中描述正确的是()A。x,y和s都是成员变量B.x是实例变量,y是类变量,s是局部变量C.x和y是实例变量,s是参数D。x,y和s都是实例变量答案:B解析:在方法中声明的s是局部变量,使用static关键字修饰的y是类变量,在类中定义的x是实例变量。4请阅读下面的程序代码ClassPerson{voidsay(){System。out。println(“hello”);}}classExample{publicstaticvoidmain(String[]args){Personp2=newPerson();Personp1=newPerson();p2。say();p1。say();p2=null;p2。say();}}下列关于程序运行结果的描述中,正确的是()A。输出1个helloB.输出2个hello后会抛出异常C.输出3个hello后会抛出异常D.不会输出hello,直接抛出异常答案:B解析:程序中创建了2个Person对象p1、p2,并分别调用了say()方法输出两个hello,然后将p2对象置为null,使p2对象失去了引用,因此再次使用p2对象调用say()方法时,会抛出异常。5下列关键字中,用于创建类的实例对象的是()。A.classB.newC。privateD.void答案:B解析:Java中使用new关键字创建对象,class用于定义一个类,private是权限修饰符,表示表示只能在本类中访问,void表示无返回值6下面哪个关键字用于将类中的属性私有化()A.defaultB。publicC.privateD.protected答案:C7下面关于调用构造方法的描述中,正确的是()A.构造方法在类定义的时候被调用B.构造方法在创建对象的时候被调用C。构造方法在调用对象方法时被调用D.构造方法在使用对象的变量时被调用答案:B解析:调用构造方法创建对象构造方法的作用是为对象中的属性赋值,在创建对象时,构造方法就会被调用。8下列关于构造方法定义的描述中,错误的是()。A。方法名与类名相同B。在方法名的前面没有返回值类型的声明C.当定义了有参构造方法,系统默认的无参构造方法依然存在D.在方法中不能使用return语句返回一个值答案:C9下列关于构造方法的描述,错误的是()。A、一个类中只能定义一个构造方法B、一个类中可以定义多个构造方法C、如果在一个类中定义有参的构造方法,jvm就不会提供默认的无参构造方法D、构造方法的作用是用来给属性进行初始化的答案:A10Personp=newPerson(“张三”,23);这条语句会调用下列哪个构造方法给属性进行初始化()A.publicPerson(){}B.publicPerson(Stringname,intage){this。name=name;this.age=age;}C。publicPerson(intage,Stringname){this。age=age;this。name=name;}D.publicPerson(Stringname){this。name=name;}答案:B解析:创建对象时会找到匹配的构造方法给属性进行初始化,由于Personp=newPerson(“张三”,23);这条语句中有两个参数,而且第1个参数是String类型的,第2个参数是int类型的,因此会调用B选项中的构造方法。11在Java中,要想让一个类继承另一个类,可以使用以下哪个关键字?A。inheritsB.implementsC.extendsD.modifies答案:C12在类的继承关系中,需要遵循以下哪个继承原则?A.多重B。单一C。双重D。不能继承答案:B13已知类的继承关系如下:classEmployee;classManagerextendsEmployeer;classDirectorextendsEmployee;则以下语句能通过编译的有哪些?A。Employeee=newManager();B。Directord=newManager();C.Directord=newEmployee();D。Managerm=newDirector();答案:A14编译运行下面的程序,结果是什么?publicclassA{publicstaticvoidmain(String[]args){Bb=newB();b。test();}voidtest(){System.out.print("A”);}}classBextendsA{voidtest(){super。test();System。out.print(”B");}}A.产生编译错误B.代码可以编译运行,并输出结果ABC。代码可以编译运行,但没有输出D.编译没有错误,但会产生运行时异常答案:B15publicclassExample{publicstaticvoidmain(String[]args){try{intrst=4/0;System。out.println("ret=”+rst);}catch(Exceptione){System。out。println(”catch语句块执行”);return;}finally{System.out.println(”finally语句块执行");}System.out.println("程序继续向下执行”);}}运行以上程序,输出的结果是()A。catch语句块执行B.catch语句块执行程序继续向下执行C。catch语句块执行finally语句块执行D.0程序继续向下执行答案:C解析:在try语句块中发生了除零异常,因此会执行catch语句块中的内容,输出"catch语句块执行",finally语句块中表示一定会执行的语句,虽然catch中有return,但依然会输出”finally语句块执行"16下面程序运行的结果是()classDemo{publicstaticvoidmain(String[]args){try{intx=div(1,2);}catch(Exceptione){System。out.println(e);}System.out.println(x)}publicstaticintdiv(inta,intb){returna/b;}}A.输出1B.输出0C。输出0.5D.编译失败答案:C17在try{}catch(______e){}横线处需要填写的是()A.异常对象B。异常类C。任意对象D.任意类答案:B解析:catch代码块需要一个形参指明它所能够接收的异常类型,这个参数的类型必须是Exception类或其子类18以下对于try…catch语句描述正确的是()A。try…catch语句处理程序中的错误B.try.。。catch语句处理程序中的bugC.try。..catch语句处理程序中的异常D。以上说法都不正确答案:C解析:try。。。catch语句处理程序中的异常19下列选项中,关于final修饰成员变量的说法正确的是?()A.被final修饰的成员变量可以被多次赋值B.被final修饰的成员变量为常量C.final只能在接口中修饰成员变量D.以上都不对答案:B解析:被final修饰的变量为常量,不能被第二次赋值或改变引用20下列选项中,不可以被final修饰的是?()A.接口B。类C。方法D.变量答案:A解析:final关键字可用于修饰类、变量和方法题目难度:★☆☆☆容易21分析下面程序,哪一行代码能正确赋值?()classDemo{publicvoidmethod(){finalintnum1=10;staticintnum2=20;abstractintnum3=30;privateintnum4=40;}}A.finalintnum1=10;B。staticintnum2=20;C.abstractintnum3=30;D。privateintnum4=40;答案:A解析:final可以修饰局部变量22下面程序的运行结果是()publicclassDemo{publicstaticvoidmain(String[]args){try{System.out。println(10/0);System.out.println(”除法正常运行”);}catch(ArithmeticExceptione){System。out。println("除数不能为0");}}}A.编译失败B.编译通过,没有结果输出C。输出:除法正常运行D。输出:除数不能为0答案:D解析:虽然是运行时期异常,但是也可以使用try…catch语句进行处理.一旦进入处理语句就不会再回去执行23下列选项中,用于解压jar文件的命令是()A。jar–cB。jar–xC。jar–vD。jar-f答案:B解析:参数x用于解压24下列选项中,可以导入指定包中所有类的是()A.package包名;B。package包名.*;C.import包名;D。import包名。*;答案:D解析:如果有时候需要用到一个包中的许多类,则可以使用“import包名。*;”来导入该包下所有类25下列关于protected的说法中,正确的是()A。protected修饰的方法,只能给子类使用B.protected修饰的类,类中的所有方法只能给子类使用C。如果一个类的成员被protected修饰,那么这个成员既能被同一包下的其它类访问,也能被不同包下该类的子类访问D。以上都不对答案:C解析:如果一个类的成员被protected访问控制符修饰,那么这个成员既能被同一包下的其它类访问,也能被不同包下该类的子类访问26如果类的成员被()访问控制符来修饰,则这个成员只能被该类的其它成员访问,其它类无法直接访问A.privateB。defaultC。protectedD。public答案:A解析:如果类的成员被private访问控制符来修饰,则这个成员只能被该类的其它成员访问,其它类无法直接访问。类的良好封装就是通过private关键字来实现的27阅读下列的代码publicclassTest{publicstaticvoidmain(String[]args){__________________________________________________}}classOuter{staticclassInner{publicvoidmethod(){System.out。println(”method”);}}}下列选项中,填写在空白处可以使程序正常运行的是()A。Outero=newOuter();o.method();B。InnerI=newInner();i。method();C.Outer。Inneroi=newOuter。Inner();oi.method();D。以上答案都不对答案:C28阅读下列的程序publicclassTest3{publicstaticvoidmain(String[]args){__________________________________________________}}classOuter{staticclassInner{publicvoidmethod(){System.out.println("method");}}}下列选项中,可以正确输出method()方法的是()A、Outero=newOuter();o。method();B、InnerI=newInner();i.method();C、Outer.Inneroi=newOuter。Inner();oi.method();D、以上答案都不对答案:C29下列关于使用this调用构造方法的说法中,错误的是?()A.使用this调用构造方法的格式为this([参数1,参数2…])B。只能在构造方法中使用this调用其它的构造方法C。使用this调用其它构造方法的语句必须放在第一行D。在一个类的两个构造方法中可以使用this互相调用答案:D30下列关于this的说法中,错误的是()A。只能在构造方法中使用this调用其它的构造方法,不能在成员方法中使用B.在构造方法中,使用this调用构造方法的语句必须位于第一行,且只能出现一次C。this关键字可以用于区分成员变量与局部变量D.this可以出现在任何方法中答案:D31在Java语言中,所有的类都直接或间接继承自【】类答案:Object32一个类如果实现一个接口,那么它就需要实现接口中定义的全部【】,否则该类就必须定义成【】答案:方法,抽象类33异常的捕获通常由try、catch两部分组成,【】代码块用来存放可能发生异常,【】代码块用来处理产生的异常答案:try,catch34在Java语言中,允许使用已存在的类作为基础创建新的类,这种技术我们称为【】答案:继承35当一个对象被当成垃圾从内存中释放时,它的【】方法会被自动调用。答案:finalize()36final修饰的方法,不能被子类【】答案:重写解析:final修饰的方法为最终方法,不能被重写37final修饰的局部变量只能被赋值【】次答案:一解析:final最终变量,只能赋值一次38RuntimeException类及其子类都是【】异常答案:运行时39自定义异常需要继承【】类答案:Exception解析:Exception是所有异常的超类40构造方法没有返回值类型,因此不能使用【】语句。答案:return41构造方法的名称必须和【】保持一致.答案:类名42如果在某一个方法中定义的局部变量与成员变量同名时,在该方法中通过变量名访问到的是【】。答案:局部变量43类与对象的关系中,【】用于描述多个对象的共同特征,它是对象的模板。【】用于描述现实中的个体,它是类的实例。答案:类,对象解析:类用于描述多个对象的共同特征,它是对象的模板。对象用于描述现实中的个体,它是类的实例。44请简述面向对象的三大特征.答案:封装、继承、多态面向对象的特点主要可以概括为封装性、继承性和多态性.其中封装是面向对象的核心思想,将对象的属性和行为封装起来,不需要让外界知道具体实现细节,这就是封装思想。继承性主要描述的是类与类之间的关系,通过继承,可以在无需重新编写原有类的情况下,对原有类的功能进行扩展.多态性指的是在程序中允许出现重名现象,它指在一个类中定义的属性和方法被其它类继承后,它们可以具有不同的数据类型或表现出不同的行为,这使得同一个属性和方法在不同的类中具有不同的语义。45简述成员变量与局部变量的区别。答案:1.定义位置的区别:1)成员变量是定义在方法之外类之内的变量,称作为成员变量(成员属性)。2)局部变量是定义在方法之内的变量。2。生命周期的区别:1)成员变量是随着对象的创建而存在,随着对象的消失而消失。2)局部变量随着方法的调用执行到了创建局部变量的语句的时候存在,局部变量一旦出了自己的作用域马上从内存中消失。3.存储位置的区别:1)成员变量是存储于堆内存中的.2)局部变量是存储于栈内存中的.4.初始值的区别:1)成员变量有默认的初始值:int0double0。0float0。0f;char''Stringnullbooleanfalse2)局部变量没有默认的初始值,要先初始化才能使用。46请简述类与对象之间的关系。答案:类是同一种类型对象的抽象,它用于描述一组对象的共同特征和行为。面向对象的编程思想力图在程序中对事物的描述与该事物在现实中的形态保持一致。为了做到这一点,面向对象的思想中提出两个概念,即类和对象.其中,类是对某一类事物的抽象描述,而对象用于表示现实中该类事物的个体。47请简要说明使用封装的好处。答案:1。提高了数据的安全性。2.隐藏了实现细节.3.操作简单、方便.49请阅读下面的程序,在空白处填写正确的代码,定义一个无参构造方法。publicclassPerson{public____(){}}答案:Person解析:在一个类中定义的方法如果同时满足以下三个条件,该方法称为构造方法,具体如下:构造方法的定义需要同时满足三个条件,具体如下:1:方法名与类名相同2:在方法名的前面没有返回值类型的声明3:在方法中不能使用return语句返回一个值因此,只需在横线处填写Person即可。50请简述构造方法的特点。答案:1.构造方法名与类名相同2。在构造方法名的前面没有返回值类型的声明3。在构造方法中不能使用return语句返回一个值51请简要说明什么是构造方法重载。答案:与普通方法一样,构造方法也可以重载,在一个类中可以定义多个构造方法,只要每个构造方法的参数类型或参数个数不同即可。52阅读下面的程序,分析代码是否能够编译通过,如果能编译通过,请列出运行的结果并分析出现此结果的原因。否则请说明编译失败的原因.classCat{voidmi()throwsNullPointerException{System.out.println(”Catmimi。。");}}publicclassSmallCatextendsCat{voidmi()throwsException{System.out.println(”SmallCatmimi.。");}publicstaticvoidmain(String[]a)throwsException{Catcat=newSmallCat();cat。mi();}}答案:程序编译失败。在子类中,如果要覆盖父类的一个方法,而父类中的方法声明了throws异常,则子类的方法也可以抛出异常,但切记子类方法抛出的异常只能是父类方法抛出的异常的同类或子类,而不能是父类.53在横线处填入正确的代码,可以让局部变量的age给成员变量的age赋值。classPerson{intage;publicPerson(intage){______________//让局部变量的age给成员变量的age赋值}publicintgetAge(){returnthis.age;}}答案:this。age=age;54阅读下面的程序,分析代码是否能够编译通过,如果能编译通过,请列出运行的结果并分析出现此结果的原因。否则请说明编译失败的原因。publicclassExample{publicstaticvoidmain(String[]args){try{System.out.println(4/0);System。out.println("程序没有异常");}catch(Exceptione){System.out。println("程序发生异常”);return;}finally{System.out。println(”finally语句执行”);}}}答案:程序发生异常finally语句执行解析:try语句中存放可能发生异常的语句,catch语句用于对异常进行处理,finally中的语句表示一定会被执行的语句.在进行4/0运算时,程序发生了除0异常,catch语句捕获异常执行并输出“程序发生异常”,此时在catch语句中还有一个return语句,但是这并不会影响finally语句的正常运行,程序仍然输出“finally语句执行”,除非在catch语句中执行System。exit(0);退出虚拟机,finally语句才不执行。55简述抽象类和接口的区别?答案:在Java中,使用abstract关键字修饰的类称之为抽象类。抽象类是不能被实例化的,通常需要写一个子类来继承抽象类,同时实例化子类来获得该类的对象。抽象类通常用于表示一种抽象的概念。接口可以说是一种特殊的抽象类,接口中只能定义常量和抽象方法。由于接口的特殊性,在定义时需要使用interface关键字。56阅读下面的程序,分析代码是否能够编译通过,如果能编译通过,请列出运行的结果。否则请说明编译失败的原因。publicclassOuter{publicStringname=”Outer";privateclassInner{Stringname=”inner";voidshowName(){System。out。println(name);}}publicstaticvoidmain(String[]args){Innerinner=newOuter()。newInner();System。out。println(inner。name);}}答案:程序能够编译通过,运行的结果为“inner"57构造方法和普通的成员方法有什么区别?答案:构造方法是类的一个特殊成员,它会在类实例化对象时被自动调用。而普通方法只有在使用的时候才会被调用。在定义构造方法时要求方法名与类名相同、在方法名的前面没有返回值类型的声明、在方法中不能使用return语句返回一个值.解析:58阅读下面的程序,分析代码是否能够编译通过,如果能编译通过,请列出运行的结果.否则请说明编译失败的原因.publicclassDemo{publicstaticvoidmain(String[]args){newObject(){publicvoidshow(){System。out.println("helloworld”);}}。show();}}答案:helloworld解析:匿名内部类继承了Object类,并自定义了一个show()方法,*使用匿名内部类调用show()方法,调用的是子类也就是匿名内部类自身的show()方法,*编译和运行均能正常进行,因此打印输出了helloworld60请简要概述try…catch语句中,try和catch的作用答案:try中编写被检查可能出现异常的代码,catch用于抓住或者不捕获异常,并处理异常解析:61简述thorws的作用答案:throws总是出现在一个函数头中,用来标明该成员函数可能抛出的各种异常.对大多数Exception子类来说,Java编译器会强迫你声明在一个成员函数中抛出的异常的类型。如果异常的类型是Error或RuntimeException,或它们的子类,这个规则不起作用,因为这在程序的正常部分中是不期待出现的。如果你想明确地抛出一个RuntimeException,你必须用throws语句来声明它的类型解析:Throws用于声明方法抛出异常,如果是RuntimeException,可以不用抛出。但是如果是编译异常,必须使用throws抛出62运行时异常的特点是?答案:运行时异常的特点是Java编译器不会对其进行检查解析:RuntimeException类及其子类都是运行时异常。运行时异常的特点是Java编译器不会对其进行检查,也就是说,当程序中出现这类异常时,即使没有使用try。.catch语句捕获或使用throws关键字声明抛出,程序也能编译通过63简要概述,当用final修饰符修饰类、变量和方法时,被修饰者有哪些特性答案:final关键字可用于修饰类、变量和方法,它有“这是无法改变的”或者“最终”的含义,因此被final修饰的类、变量和方法将具有以下特性:1、final修饰的类不能被继承。2、final修饰的方法不能被子类重写.3、final修饰的变量(成员变量和局部变量)是常量,只能赋值一次。64请简述Java中继承的概念以及使用继承的好处答案:概念:在Java中,类的继承是指在一个现有类的基础上去构建一个新的类,构建出来的新类被称作子类,现有类被称作父类,子类会自动拥有父类所有可继承的属性和方法。好处:继承性主要描述的是类与类之间的关系,通过继承,可以无需重新编写原有类的情况下,对原有类的功能进行使用和扩展。65请简要说明单例设计模式的实现步骤。答案:1)使用private关键字私有化构造方法;2)在类的内部创建一个该类的实例对象,并使用私有的静态变量引用该对象;3)为了让类的外部能够获得类的实例对象,需要定义一个公有的静态方法,用于返回该类实例。66请问将一个类设计成单例设计模式(饿汉式),需要哪些步骤?答案:1.私有构造函数2.创建私有的静态的本类对象3。对外提供公有的静态的返回值类型为本类的方法1下列关于ServerSocket类的说法,错误的是?()A.ServerSocket类是被final关键字修饰的类,因此没有子类B.ServerSocket类用于表示服务器端C.ServerSocket类中的accept()方法会阻塞D。创建ServerSocket对象时可以指定需绑定到的端口答案:A解析:ServerSocket类是一个普通方法,没有被final关键字所修饰,它有一个直接已知子类是SSLServerSocket2以下哪个类用于实现TCP通信的客户端程序?()A.ServerSocketB。SocketC.ClientD。Server答案:B3以下哪个方法是DatagramSocket类用于发送数据的方法?()A。receive()B.accept()C.set()D.send()答案:D4下列方法中,java。net.ServerSocket类用于接收客户端请求的方法是()A。get()B。accept()C。receive()D.connect()答案:B5下列关于UDP协议的说法,错误的是()A.UDP是无连接通信协议B.UDP协议消耗资源小,通信效率高C。使用UDP协议时可能会丢失数据D。在传输重要数据时建议使用UDP协议答案:D解析:正是由于UDP的面向无连接性,不能保证数据的完整性,因此在传输重要数据时不建议使用UDP协议。6以下对File类的publicbooleaisFile()方法的描述,哪个是正确的?A。判断该File对象所对应的是否是文件B.判断该File对象所对应的是否是目录C。返回文件的最后修改时间D.在当前目录下生成指定的目录答案:A7下列关于InetAddress类的getHostName()方法的返回值的说法中,错误的是()A。如果创建的InetAddress对象是用主机名创建的,则将该主机名返回B。如果不是使用主机名创建的InetAddress对象,则将根据IP地址反向查找对应的主机名,找到则返回主机名C。该方法用于返回某个IP地址的主机名D。如果不是使用主机名创建的InetAddress对象,则将根据IP地址反向查找对应的主机名,找不到则返回null答案:D解析:如果不是使用主机名创建的InetAddress对象,则将根据IP地址反向查找对应的主机名,找不到则返回IP地址,而不是null8InetAddress类中能获取IP地址及主机名的方法是()A。getHostName()B。getLocalHost()C。getHostAddress()D.getAddress()答案:B解析:getHostName()只能获取主机名,getHostAddress()只能获取IP地址,getAddress()获取IP地址的字节数组,getLocalHost()获取到InetAddress对象,里面包含IP地址及主机名,因此答案B正确9要产生[20,999]之间的随机整数可以使用以下哪个表达式?A.(int)(20+Math。random()*97)B。20+(int)(Math.random()*980)C。(int)Math。random()*999D。20+(int)Math。random()*980答案:B10以下Math类的方法中,—4.4通过哪个方法运算后,结果为-5.0?A.round()B.min()C。floor()D。ceil()答案:C11阅读下面的程序:publicclasstest{publicstaticvoidmain(Stringargs[]){inti;floatf=2。3f;doubled=2.7;i=((int)Math.ceil(f))*((int)Math。round(d));System。out。println(i);}}程序执行后,运行结果为以下哪个选项?A.9B.5C.6D.6。1答案:A12先阅读下面的程序片段:Stringstr1=newString(”java");Stringstr2=newString("java”);StringBufferstr3=newStringBuffer("java");对于上述定义的变量,以下表达式的值为true的是哪个?A.str1==str2;B.str1。equals(str2);C.str1==str3;D.以上都不对答案:B13以下选项中,哪个流中使用了缓冲区技术?A.BuffereOutputStreamB。FileInputStreamC.DataOutputStreamD。FileReader答案:A14以下选项中,哪个是FileOutputStream的父类?A。FileB。FileOutputC.OutputStreamD.InputStream答案:C15在以下哪种情况下,线程进入就绪状态?A.线程调用了sleep()方法时B。线程调用了join()方法C.线程调用了yield()方法时D。线程调用了notify()方法答案:D16线程调用sleep()方法后,该线程将进入以下哪种状态?A。就绪状态B.运行状态C.阻塞状态D。死亡状态答案:C17处理ActionEvent事件的监听器对象需要实现哪个接口()A。ActionListenerB。KeyListenerC。KeyEventD.KeyAdapter答案:A18JTextField的构造方法中,方法JTextField(Stringtext,intcolumn)的作用是()A.创建一个空的文本框,初始字符串为nullB。创建一个具有指定列数的文本框,初始字符串为nullC.创建一个显示指定初始字符串的文本框D。创建一个具有指定列数、并显示指定初始字符串的文本框答案:D19MouseEvent类中定义了很多常量来标识鼠标动作,其中表示鼠标中键点击事件的常量是()A.BUTTON3B。BUTTON2C.BUTTON1答案:B20若想实现JRadioButton按钮之间的互斥,需要使用()类A.ButtonGroupB.JComboBoxC.AbstractButton答案:A21JMenu中用于返回指定索引处的菜单项,第一个菜单项的索引为0的方法是()A.intgetItemCount()B.voidJMenuIteminsert(JMenuItemmenuItem,intpos)C.voidaddSeparator()D.JMenuItemgetItem(intpos)答案:D22JScrollPane提供的方法中,用于指定水平滚动条策略,即水平滚动条何时显示在滚动面板上的方法是()A。voidsetHorizontalBarPolicy(intpolicy)B.voidsetVerticalBarPolicy(intpolicy)C.voidsetViewportView(Componentview)答案:A23在CardLayout布局管理中,用于显示parent容器的前一张卡片的方法是()A.voidprevious(Containerparent)B.voidshow(Containerparent,Stringname)C。voidnext(Containerparent)D.voidfirst(Containerparent)答案:A解析:在CardLayout布局管理中,用于显示parent容器的前一张卡片的方法是voidprevious(Containerparent)24下列选项中,关于GridLayout(网格布局管理器)的说法错误的是()A。GridLayout布局管理器可以设置组件的大小B.放置在GridLayout布局管理器中的组件将自动占据网格的整个区域C。GridLayout布局管理器中,组件的相对位置不随区域的缩放而改变,但组件的大小会随之改变,组件始终占据网格的整个区域D.GridLayout布局管理器缺点是总是忽略组件的最佳大小,所有组件的宽高都相同答案:A解析:GridLayout布局管理器不可以设置组件的大小,组件会自动占据网格的整个区域25GridLayout的三个构造方法中,能够指定容器的行数和列数以及组件之间的水平、垂直间距的是()A.GridLayout()B.GridLayout(introws,intcols)C。GridLayout(introws,intcols,inthgap,intvgap)答案:C解析:GridLayout的三个构造方法中,能够指定容器的行数和列数以及组件之间的水平、垂直间距的是GridLayout(introws,intcols,inthgap,intvgap)26在GridBagConstraints类的常用属性中,用于设置组件在容器中的水平方向和垂直方向的权重的是()A。fillB.gridwidth和gridheightC。gridx和gridyD.weightx和weighty答案:D解析:weightx和weighty用于设置组件在容器中的水平方向和垂直方向的权重。27下列是事件监听机制的四个步骤,请对下列步骤进行排序,使事件源实现了事件的监听机制()①定义一个类实现事件监听器的接口②为事件源注册事件监听器对象③事件监听器调用相应的方法来处理相应的事件④创建一个事件源A。①④②③B.①③④②C。④①②③D.④②①③答案:A解析:首先需要定义一个类实现事件监听器的接口,例如Window类型的窗口需要实现WindowListener。接着通过addWindowListener()方法为事件源注册事件监听器对象,当事件源上发生事件时,便会触发事件监听器对象,由事件监听器调用相应的方法来处理相应的事件28下列选项中,关于流式布局管理器(FlowLayout)的说法错误的是()A.在流式布局下,当到达容器的边界时,会自动将组件放到下一行的开始位置B.FlowLayout布局管理器的特点就是可以将所有组件像流水一样依次进行排列C。流式布局管理器是最简单的布局管理器D。流式布局管理器将容器划分为五个区域答案:D解析:流式布局管理器不可以给容器划分区域29标准输入流对应的类型是()A。InputStreamReaderB。InputStreamC。DataInputStreamD.FileInputStream答案:B解析:标准输入流对应的类型是InputStream,字节输入流30标准输出流对应的类型是()A。ObjectOutputStreamB。FilterOutputStreamC。PrintStreamD.FileOutputStream答案:C解析:out为PrintStream类型,它是标准输出流,默认将数据输出到命令行窗口31下列选项中,关于ByteArrayOutputStream类的描述正确的是?()A。ByteArrayOutputStream流中缓冲区的大小不能被定义B。ByteArrayOutputStream流关闭后仍可被调用,并且不会产生任何IOExceptionC。ByteArrayOutputStream流关闭后不能被使用,否则抛出IOExceptionD。ByteArrayOutputStream流必须与ByteArrayInputStream流配对使用答案:B解析:使用ByteArrayOutputStream(intsize)构造方法便可以设置缓冲区的大小;ByteArrayOutputStream流关闭后仍可被调用,并且不会产生任何IOException。ByteArrayOutputStream流与ByteArrayInputStream流分别对应的是字节输出流和字节输入流,没有强制要求配对使用.32下面选项中,关于PrintStream类描述错误的是()A.PrintStream可以实现将基本数据类型的数据或引用数据类型的对象格式化成字符串后再输出B.PrintStream类位于IO包中,是字符输出流的子类C。调用println()方法和print()方法输出对象数据时,对象的toString()方法被自动调用D。PrintStream类提供了一系列用于打印数据的print()和println()方法答案:B解析:PrintStream类位于IO包中,是字节输出流的子类33在PipedInputStream类中,可以使管道输入流连接到管道输出流的方法是()A。connect()B.receive()C。read()D.available()答案:A解析:receive()方法用于接收数据字节,read()方法用于读取管道输入流中的下一个数据字节,available()方法可以获取不受阻塞地从此输入流中读取的字节数。34下列选项中,关于管道流的说法错误的是()A。PipedOutputStream用于向管道中写入数据B.PipedInputStream用于从管道中读取数据C。使用管道流时必须先建立连接D。PipedInputStream、PipedOutputStream属于字符流答案:D解析:在字符流中也有一对PipedReader和PipedWriter用于管道的通信,它们的用法和PipedInputStream、PipedOutputStream相似35下列有关HashSet集合的描述中,错误的是()A.HashSet是Set接口的一个实现类B.向HashSet存入对象时,对象一般会重写hashCode()和equals()方法C.向HashSet存入对象时,对象的equals()方法一定会被执行D。HashSet存储的元素是不可重复的答案:C解析:当调用HashSet集合的add()方法存入元素时,首先调用当前存入对象的hashCode()方法获得对象的哈希值,然后根据对象的哈希值计算出一个存储位置。如果该位置上没有元素,则直接将元素存入,如果该位置上有元素存在,才会调用equals()方法36下列方法中可以用于往HashSet集合中添加元素的是()A.add(Ee)B。contains(Objecto)C。clear()D。iterator()答案:A解析:用于往集合中添加元素的方法是add(Ee)。contains(Objecto)方法用于判断set集合中是否包含指定的元素,clear()方法移除此set集合中的所有元素,iterator()方法用于获取在此set中的元素上进行迭代的迭代器37下列选项中,不属于FileWriter直接或间接父类的是()A。ObjectB.WriterC。OutputStreamWriterD。OutputStream答案:D38下列选项中,哪个类用于读取文本文件中的字符()。A.FileReaderB.FileWriterC。BufferReaderD.BufferWriter答案:A39下列选项中,哪个是FileWriter类中read()方法读取到流末尾的返回值?()A.0B。—1C.1D.无返回值答案:B40使用FileReader读取reader.txt文本文件中的数据,reader.txt中的内容为:abcimportjava。io。*;publicclassExample01{publicstaticvoidmain(String[]args)throwsException{FileReaderreader=newFileReader("reader.txt");intch;while((ch=reader。read())!=-1){System.out。print(ch+””);}reader。close();}}运行以上程序的结果是()A.编译出错B。abcC。979899D.无输出答案:C41阅读下列代码importjava.io.*;publicclassExample{publicstaticvoidmain(String[]args)throwsException{//创建一个带缓冲区的输入流BufferedInputStreambis=newBufferedInputStream(new________("src.txt”));//创建一个带缓冲区的输出流BufferedOutputStreambos=newBufferedOutputStream(newFileOutputStream(”des.txt”));intlen;while((len=bis.read())!=-1){bos.write(len);}bis.close();bos.close();}}下列选项中,可以填写在程序空白处的是()A。FileInputStreamB。FileC。InputStreamD。以上答案都不正确答案:A42请将下列四个步骤进行排列,完成文件的拷贝操作()①将字节流输入流和源文件相关联,输出流和目标文件相关联.②明确源文件和目标文件.③使用输入流的读取方法读取文件,并将字节写入到目标文件中。④关闭资源。A.①②③④B。②①③④C。②③①④D.①③②④答案:B43阅读下段代码importjava。io.*;publicclassExample{publicstaticvoidmain(String[]args)throwsException{FileInputStreamfis=newFileInputStream(”file。txt");FileOutputStreamfos=newFileOutputStream("copy_file。txt”);intch=0;while((ch=fis.read())!=-1){fos。write(ch);}fos._______;fis.close();}}下列选项中,哪个填写在程序的空白处,程序不会报错。A。read()B.available()C。close()D.write()答案:C44下面关于List集合的描述中,哪一个是错误的?()A.List集合是有索引的B.List集合可以存储重复的元素C.List集合存和取的顺序一致D。List集合没有索引答案:D解析:List集合中所有的元素是以一种线性方式进行存储的,在程序中可以通过索引来访问集合中的指定元素45下列关于List接口的描述中,错误的是?()A.List接口继承自Collection接口,是单列集合B。List集合中允许出现重复的元素C.List集合存储元素是有序的,即元素的存入顺序和取出顺序一致D。List集合中所有的元素是以二叉树方式进行存储的答案:D解析:List集合中所有的元素是以线性方式进行存储的46在DateFormat类中定义了四个常量值用于作为参数传递给这些方法,其中FULL常量表示?()A.完整格式B。长格式C.普通格式D.短格式答案:A47Calendar类中,用于为指定的日历字段增加或减去指定的时间量的方法是?()A。intget(intfield)B。voidadd(intfield,intamount)C.voidset(intfield,intvalue)D。voidset(intyear,intmonth,intdate)答案:B48下列关于java.util。Date类的描述中,错误的是?()A。无参的构造方法Date(),用来创建当前日期时间的Date对象B。在JDK的java。util包中提供了一个Date类用于表示日期和时间C。推荐使用Date(intyear,intmonth,intdate)构造方法来创建Date对象D。接收一个long型参数date的构造方法Date(longdate),用于创建指定时间的Date对象答案:C解析:Date(intyear,intmonth,intdate)构造方法已经过时,Date类中只有两个构造方法是建议使用的,一个是无参的构造方法Date(),用来创建当前日期时间的Date对象。另一个是接收一个long型参数date的构造方法Date(longdate),用于创建指定时间的Date对象.49下列方法中,用于返回当前日期的方法是?()A。Date()B.Date(intyear,intmonth,intdate)C。Date(Strings)D。Date(longdate)答案:A50下列是Math类中的一些常用方法,其中用于获取大于等于0。0且小于1.0的随机数的方法是?(A。random()B。abs()C.sin()D。pow()答案:A51下列关于Math。random()方法的描述中,正确的是?()A。返回一个不确定的整数B.返回0或是1C。返回一个随机的double类型数,该数大于等于0.0小于1.0D。返回一个随机的int类型数,该数大于等于0。0小于1。0答案:C52下列方法中,用于判断字符串是否相等的是()A。booleancontains(CharSequencecs)B。StringtoLowerCase()C.booleanequals(ObjectanObject)D。booleanisEmpty()答案:C53下列方法中,哪个用于实现获取字符在某个字符串中第一次出现的索引?()A.charcharAt(intindex)B.intindexOf(intch)C。intlastIndexOf(intch)D.booleanendsWith(Stringsuffix)答案:B54已知String对象s="abcdefg",则s。substring(2,5)的返回值为?()A。"bcde"B。"cde”C.”cdef”D。”def"答案:B55假如indexOf()方法未能找到所指定的子字符串,那么其返回值为?()A。falseB。0C。-1D.以上答案都不对答案:C56java。net包中提供了一个【】类用于表示TCP客户端答案:Socket析:java.net。Socket类表示TCP客户端57使用UDP协议开发网络程序时,需要使用两个类,分别是【】和【】答案:DatagramPacket,DatagramSocket58在Java中,【】类用于操作磁盘中文件和目录,位于【】包中答案:File,java.io59Java中一个字符占用两个字节,所有字符采用的都是【】码表答案:Unicode60System。out是【】类的对象,称为标准输出流,调用System类的【】方法可以实现标准输出流的重定向.答案:PrintStream,setOut(PrintStreamout)61在Java中,能实现线程间通信的流是【】。答案:管道流62InputStreamReader类是用于将【】转换为【】答案:字节流,字符流63BufferedWriter的【】方法可以写入一个换行符答案:newLine()64在程序中若想取得一个Runtime实例,则可以调用Runtime类的静态方法【】.答案:getRuntime()65Math类中用于计算所传递参数平方根的方法是【】答案:sqrt()66Math类中有两个静态常量PI和E,分别代表数学常量【】和【】答案:π,e67已知sb为StringBuffer的一个实例,且sb.toString()的值为”abcde”,则执行sb.reverse()后,sb。toString()的值为【】.答案:edcba68在TCP/IP协议中,【】可以用来唯一标识一台计算机答案:IP地址解析:要想使网络中的计算机能够进行通信,必须为每台计算机指定一个标识号,通过这个标识号来指定接受数据的计算机或者发送数据的计算机。在TCP/IP协议中,这个标识号就是IP地址,它可以唯一标识一台计算机。69LineNumberReader可以在读文件的同时记录行号,它是【】的直接子类.答案:BufferedReader70线程的优先级用1~10之间的整数来表示,其中【】代表优先级最高,【】代表优先级最低.答案:10,171yield()方法只能让相同优先级或者更高优先级、处于【】状态的线程获得运行的机会。答案:就绪72要将某个线程设置为后台线程,需要调用该线程的【】方法,该方法必须在【】方法之前调用。答案:setDaemon(true),start()73线程的整个生命周期分为五个阶段,分别是【】、【】、【】、【】和【】.答案:新建状态(New),就绪状态(Runnable),运行状态(Running),阻塞状态(Blocked),死亡状态(Terminated)74当新线程启动后,系统会自动调用【】方法。答案:run()75在使用JComboBox时,方法【】可以设置组合框的选项是否可编辑答案:voidsetEditable(booleanaFlag)76JTextField有一个子类【】,它表示一个密码框答案:JPasswordText77JTextField和JTextArea这两个文本组件都继承了【
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 校园急救知识培训课件
- 2024年度安检设备租赁与服务合同
- 2024年度茶叶品牌竞争情报研究合同
- 销售技巧及话术课件
- 2024年度大理石石材买卖合同的合同标的验收合同
- 七年级数学上册 4 几何图形初步教案 (新版)新人教版
- 2024年度厂房环境污染治理合同
- 2024年度商业物业租赁合同(含装修、改造及运营管理细节)2篇
- 2024年度服装品牌授权经营与采购合同
- 2024年度节能门窗生产线升级改造合同
- 2024-2030年中国测试分选机行业市场发展分析及竞争格局与投资发展研究报告
- 《煤矿重大事故隐患判定标准》解读培训课件2024(中国煤矿安全技术培训中心)
- 学校厨房设备投标方案(技术方案)
- 课本剧哈姆雷特剧本
- 加速康复外科在我国发展现状、挑战与对策
- 2023《住院患者身体约束的护理》团体标准解读PPT
- 跨国化妆品企业在中国本土化战略研究分析-以雅诗兰黛公司为例 工商管理专业
- 2024年度家庭医生签约服务培训课件
- 医院陪护服务投标方案(技术方案)
- 专病数据模块及数据库建设需求
- (2024年)《包装设计》教案完整版
评论
0/150
提交评论