java面向对象编程、类地封装、接口和基本类库练习题_第1页
java面向对象编程、类地封装、接口和基本类库练习题_第2页
java面向对象编程、类地封装、接口和基本类库练习题_第3页
java面向对象编程、类地封装、接口和基本类库练习题_第4页
java面向对象编程、类地封装、接口和基本类库练习题_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实用标准文案面向对象编程基本知识练习一、判断题.不需要定义类,就能创建对象。().构造方法用于给类的private实例变量赋值。().对象一经声明就可以立即使用。().在定义变量和方法时,必须清楚地在其面前标上访问权限修饰符。().Java程序中的参数传递都是把参数值传递给方法定义中的参数。().在类定义中,成员访问权限修饰符不能多次出现。().new操作符动态地为对象按其指定的类型分配内存,并返回该类型的一个引用。()8.类的方法通常设为public,而类的实例变量一般也设为publico().构造方法在创建对象时被调用。().通过点运算符与类对象的引用相连,可以访问此类的成员。().声明为protected的类成员只能被此类中的方法访问。().同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间。().类的成员变量可以放在类体的任意位置。().声明为protected的类成员可以被此类作用域中的任何对象访问。().没有返回值的方法可以用void来表示,也可以不加。()二、选择题1.下面对对象概念描述错误的是:( )A操作是对象的动态属性B任何对象都必须有继承性C对象间的通讯靠消息传递D对象是属性和方法的封装体2.编译并运行下面的程序,运行结果为:( )publicclassA(publicstaticvoidmain(String口args)(Aa=newA();a.method(8);)voidmethod(inti)(System.out.println("int: ”+i);)voidmethod(longi)(System.out.println(“long: “+i);))A程序可以编译运行,输出结果为int:8B程序可以编译运行,输出结果为long:8文档大全实用标准文案C程序有编译错误,因为两个巾6计0w)方法必须定义为静态(static)的D程序可以编译运行,但没有输出.下面关于类的说法不正确的是:()A类是Java语言中的一种复合数据类型B类中不包含数据变量和方法C类是对所有具有一定共性的对象的抽象DJava语言的类只支持单继承.能作为类及其成员的修饰符是:()AinterfaceBclassCprotectedDpublic.设x、y均为已定义的类名,下列声明对象x1的语句不可能正确的是()Apublicxxl=newy();Bpublicyxl=newx();Cxxl=newx();Dxxl=x();.面向对象程序设计技术的特点是:()A可重用性B可维护性C表示方法的一致性D可重用性、可维护性、表示方法的一致性.下列方法定义中,方法头不正确的是:()Apublicstaticx(doublea){…}Bpublicstaticintx(doubley){…}Cvoidx(doubled)Dpublicintx(){…}.设已声明了一个类A的两个对象al、a2,为了初始化al和a2,下面语句正确的是:()Aal=new();a2=new();Bal=Anew();a2=Anew();Cal,a2=newA();Dal=newA();a2=newA();.构造方法何时被调用?()A类定义时B使用对象的变量时C调用对象方法时D创建对象时.下列哪个类声明是正确的?()ApublicabstractclassCar{…}Babstractprivatemove(){…}Cprotectedprivatenumber;DabstractfinalclassHl{…}.下列不属于面向对象程序设计的基本特征的是:()文档大全实用标准文案A抽象B封装C继承D静态12.请看下面的程序段classPerson{Stringname,department;intage;publicPerson(Stringn){name=n;}publicPerson(Stringn,inta){name=n;age=a;}publicPerson(Stringn,Stringd,inta){//doingthesameastwoargumentsversionofconstructer//includingassignmentname=n,age=a}}下面那一选项可以添加到“//doingthesame ”处:()APerson(n,a)Bthis(Person(n,a))Cthis(n,a)Dthis(name.age).()是一个特殊的方法,用于对类的实例变量进行初始化。A终止函数B构造函数C重载函数D初始化函数.关于变量和它们范围的说法,正确的是:()A实例变量是类的成员变量B实例变量要用关键字static来声明C在一个方法执行时,定义在该方法的局部变量才被创建D局部变量必须在它们使用前初始化15.请看下面的程序段classTest{privateintm;publicstaticvoidfun(){//somecode…}}方法fun()如何来访问变量m:()A将 private int m 改成 protected intmB将 private int m 改成 public int mC将 private int m 改成 static int mD将 private int m 改成 intm.在Java中,方法main()将返回一个()值。AString文档大全实用标准文案BintCcharDvoid.有一个类A,对于其构造函数的声明正确的是()AvoidA(intx){…}BpublicA(intx){…}CAA(intx){…}DintA(intx){…}.请看下面的程序段publicclassTest{longa[]=new10ng[10];publicstaticvoidmain(Stringarg[]){System.out.println(a[6]);}}那一个选项是正确的:()A不输出任何内容B输出0C当编译时有错误出现D当运行时有错误出现.关键字()表明一个对象或变量在初始化后不能修改。AextendsBfinalCthisDfinalizer.声明为static的方法不能访问()类成员。A超类B子类C非staticD用户自定义类类的封装练习一、判断题.在子类中可以用完全相同的signature重新定义一个超类方法,这称为方法的覆盖(override)0().final修饰的方法是不能被子类覆盖的,只能被重载。().声明为final的类不能是超类。().当一个超类成员不适合该子类时,子类会以恰当的方式重新定义它°().对子类实例化对象需要调用超类的构造函数进行初始化工作,完成对子类中的超类实例变量的初始化,则子类可以继承超类的构造函数。().在类的定义中如果不明确给出超类,那么默认超类就是Object类。().protected类型的实例变量或方法只能由声明该变量或方法的类本身及其子类访问。().Java的每个子类的构造函数都要显式的调用它的直接超类的构造函数。().超类对象的集合通常比它的任何一个子类对象集合大。()文档大全实用标准文案.子类可以从多个超类中派生出来。()二、选择题.为了区分重载多态中同名的不同方法,要求:()A参数名不同B返回值类型不同C采用不同的形式参数列表D选项ABC都对.在某个类中定义一个方法:voidGetSort(intx),以下关于能否作为这个方法的重载错误的是:()AvoidGetSort(floatx){x*=x;}BintGetSort(doubley){return(int)(2*y);}CdoubleGetSort(intx,inty){returnx+y;}D都不能.下列对继承的说法,哪个是正确的:()A子类只能继承父类public方法和状态B子类能继承父类的非私有方法和状态C子类能继承父类的所有方法和状态D子类只能继承父类的方法,而不继承状态.定义类A如下:classA{inta,b,c;publicvoidB(intx,inty,intz){a=x;b=y;c=z;}}下面对方法B()的重载哪些是正确的:()ApublicvoidA(intxl,intyl,intz1){a=x;b=y;c=z;}BpublicvoidB(intx1,intyl,intz1){a=x;b=y;c=z;}CpublicvoidB(intx,inty){a=x;b=y;c=0;}DpublicB(intx,inty,intz){a=x;b=y;c=z;}5.下列程序的结果输出为:()classStrange{intj;Strange(){this(4);}Strange(intj){this.j=j;}}classMainStrange{publicstaticvoidmain(string[]args){Strangefunny=newStrange();System.out.println(“j="+funny.j);}文档大全实用标准文案)Aj=2Bj=4Cj=6Dj=7.下列说法正确的是:()AJava中允许一个子类有多个父类B某个类是一个类的子类,它仍有可能成为另一个类的父类C一个父类只能有一个子类D继承关系最多不能超过4层.下列说法正确的是:()A子类只能覆盖父类的方法,而不能重载B子类只能重载父类的方法,而不能覆盖C子类不能定义和父类同名同形参的方法,否则,系统将不知道使用哪个方法。D重载就是一个类中有多个同名但不同形参和方法体的方法.关于构造函数的说法正确的是:()A一个类只能有一个构造函数B一个类可以有多个不同名的构造函数C构造函数与类同名D构造函数必须自己定义,不能使用父类的所有构造函数.下面是有关子类调用父类构造函数的描述正确的是:()A子类定义了自己的构造函数,就不会调用父类的构造函数B子类必须通过super关键字调用父类有参数的构造函数C如果子类的构造没有通过super调用父类构造函数,那么子类会先调用子类自己的构造函数,再调用父类不含参数的构造函数。D创建子类的对象时,先调用子类自己的构造函数,然后调用父类的构造函数.构造方法何时被调用?()A类定义时B使用对象的变量时C调用对象方法时D创建对象时.如果超类不允许其通过继承的方式产生的子类访问它的某些成员,那么它必须以什么方式声明该成员。()ApublicBprivateCrotectedDstatic.声明为final的变量不能在子类中覆盖,声明为()和()的方法是隐式的final。()ApublicprivateBprivateprotectedCprotectedstaticDstaticprivate.继承性使__成为可能,它不仅节省开发时间,而且也鼓励人们使用已经验证无误和调文档大全实用标准文案试过的高质量软件。()A节省时间B软件复用C软件管理D延长软件生命周期.编译运行下面的程序,结果是()。PublicclassA(publicstaticvoidmain(String[]args)(Bb=newB();b.test();)voidtest()(System.out.print(“A”);))classBextendsA(27voidtest()(super.test();System.out.println("B”);))A产生编译错误B代码可以编译运行,并输出结果:ABC代码可以编译运行,但没有输出D编译没有错误,但会产生运行时异常15.已知类关系如下:classEmployee;classManagerextendsEmployeer;classDirectorextendsEmployee;则以下语句正确的是:()AEmployeee=newManager();BDirectord=newManager();CDirectord=newEmployee();DManagerm=newDirector();.一个类的对象可以当作相应的__类对象看待。()A子系统B用户系统C子超D超用户文档大全实用标准文案.哪个方法是对如下方法的重载?()publicvoidexample(){...}Apublicvoidexample(intm){...}Bpublicintexample(){...}Cpublicvoidexample2(){...}Dpublicintexample(intm,floatf){...}18、被声明为private,protected及public的类成员,在类外部:()A只能访问到声明为public的成员B只可能访问到声明为protected和public的成员C都可以访问D都不能访问19、现有两个类A、B,以下描述中表示B继承自A的是()AclassAextendsBBclassBimplementsA28CclassAimplementsDclassBextendsA20、设类B是类C的父类,下列声明对象x1的语句中不正确的是()ACx1=newB();BBx1=newC();CCx1=newC();DBxl=newB();三、简述题.方法的重载和覆盖有什么区别?.简述超类和子类的关系。.在方法体中可以使用this和super关键字,其意义是什么,在什么情况下使用?.试分清“是一个”关系和“有一个”关系。.调用构造方法遵循什么规则?.要使一个类的多个对象具有不同的初始状态,应如何实现?接口和基本类库练习题一、判断题Java中的类和接口都只支持单重继承。().由于Java中类只支持单重继承,所以一个类只能继承一个抽象类和实现一个接口。().内部类始终可以访问外部类。().对于一个抽象类,改变它的属性和方法一定会改变它所有子类的属性和方法。().一个类可以实现抽象类的所有方法,也可以只实现部分方法,但实现部分方法的类仍然是一个抽象类。().在实现接口的时候,要实现所有方法。().接口其实是一个特殊的abstractclass。().一个接口不可以继承其他接口。()二、选择题1.下面有关接口的说法,哪个是正确的?()文档大全实用标准文案A接口与抽象类是相同的概念B一个类不可实现多个接口C接口之间不能有继承关系D实现一个接口必须实现接口的所有方法2、在使用interface声明一个接口时,可以使用()修饰符修饰该接口。AprivateBprotectedCprivateorprotectedDpublic3.下列哪个不是属于接口用途的?()A通过接口可以实现不相关类的相同行为B通过接口可以指明多个类需要实现的方法C通过接口可以了解对象的交互界面D通过接口可以了解对象所对应的类.虽然接口和抽象类不能创建对象,但它们的对象引用仍可指向该类型的对象。这种说法()A正确B不正确C不能确定D接口和抽象类不能说明其对象引用.下面哪个类包括drawImage()方法、drawString()方法和setColor()方法。()Ajava.awt.AppletBjava.awt.ImageCjava.awt.GraphicsDjava.util.Date.接口中说明了一组公共的抽象方法,其中是否包含公共的静态方法?答案是()A可以B不可以C不能肯定D因静态方法不能被改写,故不能出现在接口中.接口是Java面向对象的实现机制之一,以下说法正确的是:()AJava支持多重继承,一个类可以实现多个接口BJava只支持单重继承,一个类可以实现多个接口CJava只支持单重继承,一个类只可以实现一个接口DJava支持多重继承,但一个类只可以实现一个接口.关于接口的定义和实现,以下描述正确的是:()A接口定义中的方法都只有定义没有实现B接口定义中的变量都必须写明final和staticC如果一个接口由多个类来实现,则这些类在实现该接口中的方法时应采用统一的代码D如果一个类实现一个接口,则必须实现该接口中的所有方法,但方法未必声明为public11.声明接口的保留字是()AinterfaceBprotectCfinal文档大全实用标准文案Dstatic.下面的接口(类)定义正确的是:()ApublicclassA(privateintx;publicgetx(){returnx;}

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论