您好,欢迎访问三七文档
Java基础试题一:选择题()1:Java提供哪几种运算符多选(ABCD)。A)算术运算符B)位运算符C)关系运算符D)逻辑运算符E)条件运算符2:java.lang包的(B)方法比较二个对象是否相等返回true.。()A:toString()B:equals()C:compareD:以上都不正确3:下列对Java的变量与函数说法正确的是多选(ACE)。A)变量是用来保存数据的B)变量是用来实现操作过程的C)函数是用来实现操作过程的D)函数是用来保存数据的E)函数的参数是数据的入口4:已知:int[]a=newint[100];在下列给出的数组元素中,非法的是。(D)A:a[0]B:a[1]C:a[99]D:a[100]5:在java中,一个类可同时定义许多同名的方法,在这些方法的形式参数个数,类型或顺序各不相同,传值也可以各不相同。这种面向对象程序的特性称为。(C)A:隐藏B:覆盖C:重载D:Java不支持此特性6:(D)是一组常量和抽象方法的集合。()A:实例B:类C:包D:接口7:下面关于数组说法正确的是多选(ABCDE)。A)一维数组实质上是相同类型变量的列表B)创建一个数组首先定义数组变量所需的类型C)charc[]=newchar[26];可声明一个含有26个元素的char型数组D)当为一个多维数组的时候分配内存时,仅需要为第一指定内存,然后再分配其他维的存E)inttwain[][]=newint[4][5];可声明一个二维数组8:Java源文件和编译后的文件扩展名分别为。(B)A:.class和.javaB:.java各.classC:.class和.classD:.java和.java9:设x=5;则y=x--和y=--x的结果,使y分别为。(C)A:5,5B:5,6C:5,4D:4,410:若x是float类变量,x=10/4;则x的值是。(B)A:2B:2.0C:2,5D:编译错误11:.下面方法中,用于调度线程使其运行的是?多选(BC)A.init()B.start()C.run()D.resume()E.sleep()12.下面哪种情况能实现自动转换多选(ACE)。A)byte型转换成int型B)int型转换成byte型C)float型转换成double型D)double型转换成int型E)char型转换成int型13:下列那些是正确的JAVA字符串?多选(ABD)。A.\\B.OxzabcC.\\D.\t\t\r\nE.boolean514:在使用super和this关键字时,以下描述正确的是。(A)A::在子类构造方法中使用super()显示调用父类的构造方法,super()必须写在子类构造方法的第一行,否则编译不通过B:super()和this()不一定要放在构造方法内第一行C:this()和super()可以同时出现在一个构造函数中D:this()和super()可以在static环境中使用,包括static方法和static语句块15:以下对封装的描述正确的是。(D)A:只能对一个类中的方法进行封装,不能对属性进行封装B:如果子类继承了父类,对于父类中进行封装的方法,子类仍然可以直接调用C:封装的意义不大,因此在编码时尽量不要使用D:封装的主要作用在于对外隐藏内部实现细节,增强程序的安全性16:以下对继承的描述错误的。(A)A:Java中的继承允许一个子类继承多个父类B:父类更具有通用性,子类更具体C:Java中的继承存在着传递性D:当实例化子类时会递归调用父类中的构造方法17:以下关于final关键字说法错误的是(A.C)(两项)A:final是java中的修饰符,可以修饰类、接口、抽象类、方法和属性B:final修饰的类肯定不能被继承C:final修饰的方法不能被重载D:final修饰的变量不允许被再次赋值18:访问修饰符作用范围由大到小是。(D)A:private-default-protected-publicB:public-default-protected-privateC:private-protected-default-publicD:public-protected-default-private19:以下()不是Object类的方法。(D)A:clone()B:finalize()C:toString()D:hasNext()20:多态的表现形式有。(A)A:重写B:抽象C:继承D:封装21:以下对重载描述错误的是。(B)A:方法重载只能发生在一个类的内部B:构造方法不能重载C:重载要求方法名相同,参数列表不同D:方法的返回值类型不是区分方法重载的条件22:以下对接口描述错误的有。(D)A:接口没有提供构造方法B:接口中的方法默认使用public、abstract修饰C:接口中的属性默认使用public、static、final修饰D:接口不允许多继承23:以下对自定义异常描述正确的是。(C)A:自定义异常必须继承ExceptionB:自定义异常可以继承自ErrorC:自定义异常可以更加明确定位异常出错的位置和给出详细出错信息D:程序中已经提供了丰富的异常类,使用自定义异常没有意义24:在Java中,下面对于构造函数的描述正确的是。(D)A:类必须显示定义构造函数B:构造函数的返回类型是voidC:构造函数和类有相同的名称,并且不能带任何参数D:一个类可以定义多个构造函数25:根据下面的代码,Strings=null;会抛出NullPointerException异常的有(AC)。[两项]A:if((s!=null)&(s.length()0))B:if((s!=null)&&(s.length()0))C:if((s==null)|(s.length()==0))D:if((s==null)||(s.length()==0))26:下列选项中关于java中super关键字的说法错误的是。(B)A:super关键字是在子类对象内部指代其父类对象的引用B:super关键字不仅可以指代子类的直接父类,还可以指代父类的父类C:子类可以通过super关键字调用父类的方法D:子类可以通过super关键字调用父类的属性27:下列声明哪个是错误的。(B)A:inti=10;B:floatf=1.1;C:doubled=34.4;D:longm=4990;28:关于抽象类的说法正确的是(B)A:抽象类中一定包含抽象方法,否则是错误B:包含抽象方法的类一定是抽象类C:抽象方法可以没有方法体,也可以有方法体D:抽象类的子类一定不是抽象类29:所有类的基类。(A)A:java.lang.ObjectB:java.lang.ClassCjava.applet.AppletD:java.awt.Frame30:关于String和StringBuffer下面说法正确的是(A)A:String操作字符串不改变原有字符串的内容B:StringBuffer连接字符串速度没有String快C:String可以使用append方法连接字符串D:StringBuffer在java.util包中二:简答题()1:面向对象的特点?1.信息隐藏和封装特性:2.继承:3.组合特性4.动态特性:抽象,多态2:JDK是什么?Java开发工具包3::数组有没有length()这个方法?String有没有length()这个方法?没有,有4:Overload和Override的区别。Overloaded的方法是否可以改变返回值的类型?答:方法的重写Overriding和重载Overloading是Java多态性的不同表现。重写Overriding是父类与子类之间多态性的一种表现,重载Overloading是一个类中多态性的一种表现。如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写(Overriding)。子类的对象使用这个方法时,将调用子类中的定义,对它而言,父类中的定义如同被“屏蔽”了。如果在一个类中定义了多个同名的方法,它们或有不同的参数个数或有不同的参数类型,则称为方法的重载(Overloading)。Overloaded的方法是可以改变返回值的类型。5:error和exception的区别答:error表示恢复不是不可能但很困难的情况下的一种严重问题。比如说内存溢出。不可能指望程序能处理这样的情况。exception表示一种设计或实现问题。也就是说,它表示如果程序运行正常,从不会发生的情况。6:abstractclass和interface有什么区别?(抽象类与接口的区别)答:声明方法的存在而不去实现它的类被叫做抽象类(abstractclass),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能创建abstract类的实例。然而可以创建一个变量,其类型是一个抽象类,并让它指向具体子类的一个实例。不能有抽象构造函数或抽象静态方法。Abstract类的子类为它们父类中的所有抽象方法提供实现,否则它们也是抽象类为。取而代之,在子类中实现该方法。知道其行为的其它类可以在类中实现这些方法。接口(interface)是抽象类的变体。在接口中,所有方法都是抽象的。多继承性可通过实现这样的接口而获得。接口中的所有方法都是抽象的,没有一个有程序体。接口只可以定义staticfinal成员变量。接口的实现与子类相似,除了该实现类不能从接口定义中继承行为。当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。然后,它可以在实现了该接口的类的任何对象上调用接口的方法。由于有抽象类,它允许使用接口名作为引用变量的类型。通常的动态联编将生效。引用可以转换到接口类型或从接口类型转换,instanceof运算符可以用来决定某对象的类是否实现了接口。7:简述逻辑操作(&,|)与条件操作(&&,||)的区别?答:|如果前面满足条件,就不用判断后面的类容&&如果前面不满足条件。后面的就不用判断另外的相反8:try{}里有一个return语句,那么紧跟在这个try后的finally{}里的code会不会被执行,答:会,而且必修被执行9:AnonymousInnerClass(匿名内部类)是否可以extends(继承)其它类,是否可以implements(实现)interface(接口)答:不可以,可以10:swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上答:Byte能,long和string不能三:程序题()(题目写在答题纸上面)1:爱因斯坦台阶问题。有人走台阶若每步走2级,则最后剩1级。若每步走3级则最后剩2级。若每步走4级,则最后剩3级。若每步走5级,则最后剩4级。若每步走6级,则最后剩5级。若每步走7级,则刚好不剩。试编制程序求此台阶数。2:试编写一个程序,输入一个字符串,统计其中有多少各单词?单词之间用空格分开。3:设计一张抽象的门Door,那么对于这张门来说,就应该拥有所有门的共性,开门openDoor()和关门closeDoor();然后对门进行另外的功能设计,防盗--theftproof()、防水--waterproof()、防弹--bulletproof()、防火、防锈„„要求:利用继承、抽象类、接口的知识设计该门4:编写线程同步模拟应用程序:(1)大气环境数据为:温度,湿度,风速。(2)一个大气环境传感器测量环境数据需要5秒时间。(3)一个计算机读取传感器的环境数据需要0.01秒时间。模拟一个计算机读取大气环境传感器的读取的随机的温度,湿度和风速的100次。5:从控制台中读入一个文件名,判断该文件是否存在。如果该文件存在,则在原文件相同路径下创建一个文件名为“copy_原文件名”的新文件,该文件内容为原文件的拷贝。
本文标题:java基础笔试题
链接地址:https://www.777doc.com/doc-2880836 .html