oop技术基础知识单选题100道及答案_第1页
oop技术基础知识单选题100道及答案_第2页
oop技术基础知识单选题100道及答案_第3页
oop技术基础知识单选题100道及答案_第4页
oop技术基础知识单选题100道及答案_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

oop技术基础知识单选题100道及答案1.在面向对象编程中,以下哪种是类的实例化操作?A.定义类的属性B.创建类的对象C.定义类的方法D.继承父类的属性答案:B。解析:类的实例化就是创建类的对象,A是类内部属性定义,C是类方法定义,D是继承操作,并非实例化。2.以下关于封装的描述,正确的是?A.封装就是将数据和操作数据的方法绑定在一起B.封装只是隐藏类的属性C.封装是类之间的关系D.封装是多态的一种表现答案:A。解析:封装的核心是将数据和操作数据的方法绑定,B不全面,C说的是类关系并非封装,D封装和多态是不同特性。3.若有一个类A,通过以下哪种方式可以创建类A的对象?A.A.method()B.newA()C.A.propertyD.classA答案:B。解析:在常见面向对象语言中,使用new关键字加类名来创建对象,A是调用方法,C是访问属性,D是定义类。4.以下哪个是继承的作用?A.增加代码的冗余度B.提高代码的复用性C.减少类的属性D.使类的方法更复杂答案:B。解析:继承的主要作用是提高代码复用性,A与作用相悖,C和D不是继承主要作用。5.当一个子类继承父类时,子类可以访问父类的?A.私有属性B.受保护属性C.只能访问无修饰符的属性D.不能访问父类任何属性答案:B。解析:子类可以访问父类的受保护属性,私有属性不能访问,C说法错误,D表述错误。6.多态是指?A.一个类可以有多个构造函数B.一个方法可以有多种实现方式C.一个对象只能有一种类型D.类只能有一个父类答案:B。解析:多态指一个方法在不同情况下有多种实现方式,A是构造函数重载,C对象可以有多种类型,D类可以有多层继承。7.以下哪种是方法重载的条件?A.方法名不同,参数列表相同B.方法名相同,参数列表不同C.方法名和参数列表都相同D.方法名相同,返回值类型必须相同答案:B。解析:方法重载要求方法名相同,参数列表不同,与返回值类型无关,A、C不符合,D说法错误。8.类的构造函数的作用是?A.定义类的属性B.为对象初始化数据C.调用类的方法D.继承父类的属性答案:B。解析:构造函数用于对象创建时初始化数据,A是属性定义操作,C不是构造函数作用,D是继承操作。9.以下关于接口的描述,错误的是?A.接口中的方法都是抽象方法B.一个类可以实现多个接口C.接口可以有实例化对象D.接口可以提高代码的可扩展性答案:C。解析:接口不能实例化对象,A、B、D关于接口描述正确。10.若类A实现了接口B,那么类A必须?A.继承接口BB.重写接口B的所有方法C.忽略接口B的方法D.只能实现接口B的部分方法答案:B。解析:类实现接口必须重写接口所有抽象方法,A接口是实现不是继承,C和D不符合要求。11.在面向对象编程中,对象之间的通信主要通过?A.类的属性B.类的方法C.类的构造函数D.类的静态变量答案:B。解析:对象间通信主要通过调用对方方法,A、C、D不是主要通信方式。12.以下哪种不是面向对象编程的特性?A.抽象B.模块化C.封装D.多态答案:B。解析:面向对象编程特性有抽象、封装、继承、多态,模块化不是其特性。13.若有一个抽象类A,以下说法正确的是?A.抽象类A可以实例化对象B.抽象类A中必须有抽象方法C.抽象类A可以有非抽象方法D.抽象类A不能被继承答案:C。解析:抽象类可以有非抽象方法,不能实例化对象,不一定有抽象方法,可以被继承,A、B、D错误。14.以下关于静态变量的描述,正确的是?A.静态变量属于对象B.每个对象都有自己的静态变量副本C.静态变量在类加载时初始化D.静态变量只能在构造函数中初始化答案:C。解析:静态变量在类加载时初始化,属于类,所有对象共享,A、B错误,也可在声明时初始化,D错误。15.当子类和父类有同名方法时,这种现象称为?A.方法重载B.方法重写C.方法隐藏D.方法覆盖答案:B。解析:子类和父类同名方法是方法重写,方法重载是同一类中,C表述不准确,D和B类似但B更常用。16.以下哪个是抽象类的作用?A.强制子类实现某些方法B.减少类的属性C.增加类的方法复杂度D.使类不能被继承答案:A。解析:抽象类可强制子类实现抽象方法,B、C不是其作用,抽象类可以被继承,D错误。17.在面向对象编程中,对象的状态由?A.类的方法决定B.类的构造函数决定C.类的属性决定D.类的静态变量决定答案:C。解析:对象状态由其属性决定,A方法是操作对象的,B构造函数初始化对象,D静态变量属于类。18.以下关于包的作用,描述错误的是?A.组织类B.避免命名冲突C.提高类的访问权限D.便于代码管理答案:C。解析:包的作用是组织类、避免命名冲突、便于代码管理,不提高类访问权限,C错误。19.若一个类没有显式定义构造函数,那么系统会提供?A.一个带参数的构造函数B.一个无参构造函数C.多个构造函数D.不提供构造函数答案:B。解析:若类没显式定义构造函数,系统会提供无参构造函数,A、C、D错误。20.以下哪种是正确的对象引用赋值方式?A.对象1=对象2B.对象1.method=对象2.methodC.对象1.property=对象2.propertyD.对象1.class=对象2.class答案:A。解析:对象引用赋值是将一个对象引用赋给另一个,B、C是属性或方法操作,D表述错误。21.在面向对象编程中,以下关于数据隐藏的说法,正确的是?A.数据隐藏就是将所有属性设为私有B.数据隐藏不利于代码维护C.数据隐藏可以提高类的安全性D.数据隐藏会增加类的复杂度答案:C。解析:数据隐藏提高类安全性,不是都设为私有,利于代码维护,也不会增加复杂度,A、B、D错误。22.若类A和类B有组合关系,那么?A.类A是类B的子类B.类A依赖类B才能存在C.类A和类B可以独立存在D.类A和类B有相同的方法答案:B。解析:组合关系中一个类依赖另一个类才能存在,A是继承关系,C组合不是独立,D不一定有相同方法。23.以下关于面向对象编程中消息传递的描述,正确的是?A.消息传递是类之间的继承关系B.消息传递是对象之间调用方法C.消息传递只在一个对象内部进行D.消息传递与方法调用无关答案:B。解析:消息传递是对象间调用方法,不是继承关系,可跨对象,与方法调用相关,A、C、D错误。24.若有一个final类,以下说法正确的是?A.final类可以被继承B.final类中必须有final方法C.final类不能有属性D.final类不能被继承答案:D。解析:final类不能被继承,不要求有final方法,可以有属性,A、B、C错误。25.以下关于方法参数传递的描述,正确的是?A.基本数据类型传递的是引用B.引用数据类型传递的是值C.基本数据类型传递的是值D.传递方式与数据类型无关答案:C。解析:基本数据类型传递值,引用数据类型传递引用,A、B、D错误。26.在面向对象编程中,关联关系是指?A.一个类是另一个类的子类B.两个类之间有使用关系C.一个类包含另一个类的所有属性D.两个类必须有相同的方法答案:B。解析:关联关系是两个类有使用关系,A是继承关系,C表述错误,D不一定相同方法。27.以下哪种情况会发生方法重写?A.子类方法名和父类不同B.子类方法参数和父类不同C.子类和父类方法名、参数、返回值都相同D.子类方法返回值和父类不同答案:C。解析:方法重写要求子类和父类方法名、参数、返回值都相同,A、B、D不符合。28.以下关于接口和抽象类的区别,描述错误的是?A.接口中的方法都是抽象的,抽象类可以有非抽象方法B.一个类可以实现多个接口,只能继承一个抽象类C.接口可以有构造函数,抽象类没有D.接口中不能有属性,抽象类可以有属性答案:C。解析:接口没有构造函数,抽象类有,A、B、D关于接口和抽象类区别描述正确。29.若有一个类A和类B,类A依赖类B,那么?A.类A是类B的子类B.类A需要类B才能完成某些操作C.类A和类B有相同的属性D.类A和类B有相同的方法答案:B。解析:类A依赖类B表示A需要B完成某些操作,A是继承关系,C、D不一定相同。30.以下关于类的访问修饰符,说法错误的是?A.public类可以被任何类访问B.private类只能在本类中访问C.protected类可以被不同包的子类访问D.无修饰符类可以被所有类访问答案:D。解析:无修饰符类只能在同一包中访问,A、B、C关于访问修饰符描述正确。31.在面向对象编程中,对象的行为由?A.类的属性决定B.类的方法决定C.类的构造函数决定D.类的静态变量决定答案:B。解析:对象行为由类的方法决定,属性决定状态,构造函数初始化,静态变量属于类,A、C、D错误。32.以下关于多态的实现方式,不包括?A.方法重写B.方法重载C.接口实现D.类的属性定义答案:D。解析:多态实现方式有方法重写、方法重载、接口实现,类属性定义不是,D错误。33.若有一个类A,其中有一个静态方法method(),可以通过?A.newA().method()B.A.method()C.A.property.method()D.不能调用静态方法答案:B。解析:静态方法可通过类名直接调用,A也可但不规范,C错误,D可调用,B正确。34.以下关于继承的特点,描述错误的是?A.继承具有传递性B.一个子类可以有多个父类C.子类可以继承父类的非私有属性和方法D.继承可以提高代码复用性答案:B。解析:在大多数面向对象语言中一个子类只能有一个直接父类,A、C、D关于继承特点描述正确。35.在面向对象编程中,以下关于对象的创建顺序,正确的是?A.先调用构造函数,再分配内存B.先分配内存,再调用构造函数C.分配内存和调用构造函数同时进行D.顺序与类的定义有关答案:B。解析:创建对象先分配内存,再调用构造函数,A、C、D错误。36.以下关于抽象方法的描述,正确的是?A.抽象方法可以有方法体B.抽象方法只能在抽象类中定义C.抽象方法可以被实例化对象调用D.抽象方法可以用private修饰答案:B。解析:抽象方法只能在抽象类中定义,无方法体,不能被实例化对象调用,不能用private修饰,A、C、D错误。37.若有一个类A和类B,类A聚合类B,意味着?A.类A和类B生命周期相同B.类A包含类B的对象,但B可以独立存在C.类A是类B的子类D.类A和类B有相同的方法答案:B。解析:聚合关系中类A包含类B对象,B可独立存在,A是组合关系,C是继承关系,D不一定相同。38.以下关于方法重写的规则,错误的是?A.方法名必须相同B.参数列表必须相同C.返回值类型必须相同D.访问权限可以比父类更严格答案:D。解析:方法重写访问权限不能比父类更严格,A、B、C是重写规则。39.在面向对象编程中,以下关于对象的销毁,说法正确的是?A.对象销毁后可以再次使用B.对象销毁是由程序员手动完成C.当对象没有引用时,可能会被垃圾回收D.对象销毁与内存管理无关答案:C。解析:当对象无引用时可能被垃圾回收,销毁后不能再用,一般自动回收,与内存管理有关,A、B、D错误。40.以下关于接口的特点,描述错误的是?A.接口中的属性都是常量B.接口可以继承多个接口C.接口中的方法可以有方法体D.一个类可以实现多个接口答案:C。解析:接口中方法无方法体,A、B、D关于接口特点描述正确。41.若有一个类A,其中有一个私有属性property,以下能访问该属性的是?A.类A的外部类B.类A的子类C.类A的内部方法D.任何类都可以访问答案:C。解析:私有属性只能在类内部方法访问,A、B、D错误。42.以下关于构造函数的特点,描述错误的是?A.构造函数名与类名相同B.构造函数没有返回值类型C.构造函数可以有参数D.构造函数只能有一个答案:D。解析:构造函数可以有多个,A、B、C关于构造函数特点描述正确。43.在面向对象编程中,以下关于对象的复制,说法正确的是?A.对象复制就是创建一个新的对象,属性值相同B.对象复制只能通过构造函数实现C.对象复制后两个对象完全相同,没有区别D.对象复制与对象的引用无关答案:A。解析:对象复制创建新对象且属性值相同,可多种方式实现,复制后对象有不同引用,B、C、D错误。44.以下关于类的静态代码块,描述正确的是?A.静态代码块在对象创建时执行B.静态代码块可以有多个C.静态代码块只能在构造函数中调用D.静态代码块不能访问静态变量答案:B。解析:静态代码块可多个,类加载时执行,不依赖构造函数,可访问静态变量,A、C、D错误。45.若有一个类A实现了接口B和接口C,那么?A.类A只能实现接口B的方法B.类A必须实现接口B和接口C的所有方法C.类A可以不实现任何接口方法D.类A只能实现接口C的方法答案:B。解析:类实现多个接口需实现所有接口方法,A、C、D错误。46.以下关于方法重载和方法重写的区别,描述错误的是?A.方法重载在同一类中,方法重写在父子类中B.方法重载要求方法名相同,参数列表不同,方法重写要求方法名、参数、返回值都相同C.方法重载和方法重写对返回值类型要求相同D.方法重载和方法重写都体现了多态性答案:C。解析:方法重载对返回值类型没有要求,方法重写要求返回值类型相同(或协变),所以二者对返回值类型要求不同,A、B、D关于重载和重写区别描述正确。47.在面向对象编程中,以下关于对象的相等性,说法错误的是?A.可以通过比较对象的引用判断是否相等B.可以通过比较对象的属性值判断是否相等C.两个对象引用相同,则对象一定相等D.两个对象属性值相同,则对象一定相等答案:D。解析:两个对象属性值相同,引用不同时不是同一个对象,不一定相等,A、B、C关于对象相等性描述正确。48.以下关于抽象类和普通类的区别,描述错误的是?A.抽象类不能实例化,普通类可以B.抽象类中可以有抽象方法,普通类中不能C.抽象类的访问权限一定比普通类高D.抽象类可以被继承,普通类也可以答案:C。解析:抽象类和普通类访问权限和是否为抽象类无关,A、B、D关于二者区别描述正确。49.若有一个类A,类A中有一个受保护的方法method(),以下哪个类可以访问该方法?A.类A的同一包中的非子类B.类A的不同包中的非子类C.类A的不同包中的子类D.任何类都不能访问答案:C。解析:受保护方法可被同一包中类和不同包中子类访问,A、B错误,C正确,D错误。50.以下关于包的导入,说法正确的是?A.导入包后可以访问包中所有类的私有成员B.导入包是为了使用包中的类C.一个类只能导入一个包D.导入包后会改变类的访问权限答案:B。解析:导入包是为使用包中类,不能访问私有成员,可导入多个包,不改变类访问权限,A、C、D错误。51.在面向对象编程中,以下关于对象的克隆,描述错误的是?A.浅克隆只复制对象的基本属性B.深克隆会复制对象的所有属性,包括引用对象C.克隆对象和原对象是同一个对象D.克隆可以提高对象创建效率答案:C。解析:克隆对象和原对象是不同对象,A、B、D关于克隆描述正确。52.以下关于类的访问权限修饰符,从高到低排序正确的是?A.public、protected、无修饰符、privateB.private、protected、无修饰符、publicC.public、无修饰符、protected、privateD.protected、public、无修饰符、private答案:A。解析:访问权限从高到低是public、protected、无修饰符、private,A正确。53.若有一个类A继承类B,类B继承类C,那么?A.类A只能访问类B的属性和方法B.类A可以访问类B和类C的非私有属性和方法C.类A不能访问类C的任何属性和方法D.类A和类C没有关系答案:B。解析:继承具有传递性,类A可访问类B和类C非私有属性和方法,A、C、D错误。54.以下关于方法的返回值,说法错误的是?A.方法可以没有返回值B.方法的返回值类型必须和定义时一致C.方法可以返回多个值D.方法返回值可以是对象答案:C。解析:一般方法只能返回一个值,A、B、D关于方法返回值描述正确。55.在面向对象编程中,以下关于对象的初始化,说法正确的是?A.对象初始化只能通过构造函数完成B.对象初始化时所有属性都被赋默认值C.对象初始化和类的定义无关D.对象初始化后属性值不能再改变答案:B。解析:对象初始化时属性会赋默认值,可多种方式初始化,和类定义有关,属性值可改变,A、C、D错误。56.以下关于接口和类的区别,描述错误的是?A.接口中不能有构造函数,类可以有B.接口中的方法都是抽象的,类中可以有非抽象方法C.一个类只能实现一个接口,接口可以继承多个接口D.接口不能实例化,类可以实例化答案:C。解析:一个类可实现多个接口,A、B、D关于接口和类区别描述正确。57.若有一个类A,其中有一个静态属性staticProperty,以下访问方式正确的是?A.newA().staticPropertyB.A.staticPropertyC.A.method().staticPropertyD.不能访问静态属性答案:B。解析:静态属性可通过类名直接访问,A也可但不规范,C错误,D可访问,B正确。58.以下关于方法重写和方法重载的共同点,说法正确的是?A.都需要改变方法的访问权限B.都需要改变方法的返回值类型C.都体现了多态性D.都只能在同一个类中实现答案:C。解析:方法重写和重载都体现多态性,重写不一定要改访问权限和返回值类型,重载在同一类,重写在父子类,A、B、D错误。59.在面向对象编程中,以下关于对象的组合,描述正确的是?A.对象组合就是一个对象包含另一个对象B.对象组合的对象生命周期一定相同C.对象组合和继承的作用相同D.对象组合只能在运行时实现答案:A。解析:对象组合是一个对象包含另一个对象,组合对象生命周期不一定相同,和继承作用不同,可编译时实现,B、C、D错误。60.以下关于抽象类的定义,说法错误的是?A.抽象类使用abstract关键字修饰B.抽象类中必须有抽象方法C.抽象类可以有构造函数D.抽象类可以被继承答案:B。解析:抽象类不一定要有抽象方法,A、C、D关于抽象类定义描述正确。61.在面向对象编程中,以下关于对象的交互,说法正确的是?A.对象交互只能通过方法调用实现B.对象交互和类的属性无关C.对象交互可以改变对象的状态D.对象交互不会影响程序的执行流程答案:C。解析:对象交互可改变对象状态,可多种方式交互,和属性有关,影响执行流程,A、B、D错误。62.以下关于包的命名规范,说法错误的是?A.包名一般用小写字母B.包名可以包含特殊字符C.包名应该具有一定的含义D.包名可以体现类的层次结构答案:B。解析:包名不能包含特殊字符,A、C、D关于包命名规范描述正确。63.若有一个类A实现了接口B,类A中重写接口B的方法时,以下说法正确的是?A.重写方法的访问权限可以比接口中方法更严格B.重写方法的返回值类型必须和接口中方法完全相同C.重写方法的参数列表必须和接口中方法相同D.可以不重写接口中的所有方法答案:C。解析:重写接口方法参数列表必须相同,访问权限不能更严格,返回值类型可协变,必须重写所有方法,A、B、D错误。64.以下关于静态方法的特点,描述错误的是?A.静态方法可以直接访问静态属性B.静态方法可以直接访问非静态属性C.静态方法可以通过类名直接调用D.静态方法中不能使用this关键字答案:B。解析:静态方法不能直接访问非静态属性,A、C、D关于静态方法特点描述正确。65.在面向对象编程中,以下关于对象的封装,说法正确的是?A.封装就是将所有属性设为私有,不提供访问方法B.封装可以提高类的安全性和可维护性C.封装会降低类的复用性D.封装和类的方法无关答案:B。解析:封装可提高类安全性和可维护性,可提供访问方法,提高复用性,和方法有关,A、C、D错误。66.以下关于继承的优点,不包括?A.提高代码的复用性B.便于代码的扩展C.增加类的属性数量D.使代码结构更清晰答案:C。解析:继承优点是提高复用性、便于扩展、使结构清晰,不是增加属性数量,C错误。67.若有一个类A和类B,类A依赖类B,以下哪种情况可以体现这种依赖关系?A.类A继承类BB.类A的方法中使用了类B的对象C.类A和类B有相同的属性D.类A和类B有相同的方法答案:B。解析:类A方法中使用类B对象体现依赖关系,A是继承关系,C、D不一定体现依赖,B正确。68.以下关于方法重载的判断依据,错误的是?A.方法名相同B.参数列表不同C.返回值类型不同D.方法的参数个数、类型或顺序不同答案:C。解析:方法重载判断依据是方法名相同,参数列表不同,和返回值类型无关,A、B、D正确,C错误。69.在面向对象编程中,以下关于对象的多态性,说法正确的是?A.多态性只能通过方法重写实现B.多态性使代码更灵活,但降低了可维护性C.多态性可以在运行时根据对象类型调用不同方法D.多态性和对象的引用无关答案:C。解析:多态可通过多种方式实现,提高可维护性,和对象引用有关,可运行时根据对象类型调用不同方法,A、B、D错误。70.以下关于抽象类和接口的使用场景,描述错误的是?A.当多个类有共同的行为但实现方式不同时,可用接口B.当需要强制子类实现某些方法且有一些通用方法时,可用抽象类C.抽象类和接口使用场景完全相同D.接口更适合定义规范,抽象类更适合代码复用答案:C。解析:抽象类和接口使用场景不同,A、B、D描述正确,C错误。71.若有一个类A,其中有一个公共方法publicMethod(),以下哪个类可以访问该方法?A.类A的同一包中的子类B.类A的不同包中的子类C.类A的不同包中的非子类D.以上类都可以访问答案:D。解析:公共方法任何类都可访问,A、B、C都能访问,D正确。72.以下关于构造函数的调用,说法错误的是?A.子类构造函数默认会调用父类的无参构造函数B.可以在子类构造函数中使用super关键字调用父类构造函数C.构造函数可以在类的其他方法中调用D.构造函数在对象创建时自动调用答案:C。解析:构造函数不能在类其他方法中调用,A、B、D关于构造函数调用描述正确。73.在面向对象编程中,以下关于对象的引用传递,说法正确的是?A.引用传递就是将对象的副本传递给方法B.引用传递后,方法中对对象的修改不会影响原对象C.引用传递实际上是传递对象的内存地址D.引用传递和值传递没有区别答案:C。解析:引用传递传递对象内存地址,方法修改会影响原对象,和值传递有区别,A、B、D错误。74.以下关于接口的实现,说法错误的是?A.一个类实现接口时,必须实现接口中的所有抽象方法B.类实现接口时,方法的访问权限不能比接口中方法更严格C.一个类可以实现多个接口D.接口实现和类的继承不能同时进行答案:D。解析:类可同时实现接口和继承类,A、B、C关于接口实现描述正确,D错误。75.若有一个类A,其中有一个私有方法privateMethod(),以下哪个类可以访问该方法?A.类A的同一包中的子类B.类A的不同包中的子类C.类A的内部方法D.任何类都不能访问答案:C。解析:私有方法只能在类内部方法访问,A、B、D错误。76.以下关于静态变量和实例变量的区别,描述错误的是?A.静态变量属于类,实例变量属于对象B.静态变量在类加载时初始化,实例变量在对象创建时初始化C.静态变量只有一份副本,实例变量每个对象有一份D.静态变量和实例变量的访问方式相同答案:D。解析:静态变量通过类名访问,实例变量通过对象访问,访问方式不同,A、B、C关于二者区别描述正确。77.在面向对象编程中,以下关于对象的销毁机制,说法正确的是?A.当对象没有引用时,会立即被销毁B.对象销毁是由程序员手动管理内存实现的C.垃圾回收器会自动回收没有引用的对象D.对象销毁和程序性能无关答案:C。解析:垃圾回收器自动回收无引用对象,不是立即销毁,一般自动回收,和性能有关,A、B、D错误。78.以下关于方法重写的作用,描述错误的是?A.实现多态性B.使子类可以有自己的方法实现C.改变父类方法的功能D.减少代码的复用性答案:D。解析:方法重写实现多态,子类有自己实现,不减少复用性,C表述不太准确但D错误更明显,D错误。79.若有一个类A和类B,类A聚合类B,以下说法正确的是?A.类A和类B的生命周期一定相同B.类A销毁时,类B一定也销毁C.类A包含类B的对象,但类B可以独立存在D.类A和类B的关系和组合关系相同答案:C。解析:聚合中类A包含类B对象,B可独立存在,生命周期不一定相同,和组合不同,A、B、D错误。80.以下关于包的嵌套,说法正确的是?A.包不能嵌套B.包嵌套会降低代码的可维护性C.包嵌套可以更好地组织类D.包嵌套会改变类的访问权限答案:C。解析:包可嵌套,能更好组织类,不降低可维护性,不改变访问权限,A、B、D错误。81.在面向对象编程中,以下关于对象的状态和行为,说法正确的是?A.对象的状态和行为是相互独立的B.对象的状态决定对象的行为C.对象的行为可以改变对象的状态D.对象的状态和行为和类的定义无关答案:C。解析:对象行为可改变状态,二者有关联,状态和行为由类定义决定,A、B、D错误。82.以下关于抽象方法的定义,说法错误的是?A.抽象方法使用abstract关键字修饰B.抽象方法不能有方法体C.抽象方法只能在抽象类中定义D.抽象方法可以有访问修饰符答案:D。解析:抽象方法默认是publicabstract,一般不单独使用其他访问修饰符,A、B、C关于抽象方法定义描述正确。83.若有一个类A,类A中有一个受保护的属性protectedProperty,以下哪个类可以访问该属性?A.类A的同一包中的非子类B.类A的不同包中的非子类C.类A的不同包中的子类D.任何类都不能访问答案:C。解析:受保护属性可被同一包中类和不同包中子类访问,A、B错误,C正确,D错误。84.以下关于接口的继承,说法正确的是?A.接口只能继承一个接口B.接口继承时,不能增加新的方法C.接口继承后,子接口会拥有父接口的所有方法D.接口继承和类的继承规则相同答案:C。解析:接口可继承多个接口,可增加新方法,和类继承规则不同,继承后子接口有父接口所有方法,A、B、D错误。85.在面向对象编程中,以下关于对象的创建和初始化,说法错误的是?A.对象创建时会分配内存空间B.对象初始化可以通过构造函数完成C.对象创建和初始化是同一个过程D.对象初始化可以给属性赋初始值答案:C。解析:对象创建和初始化不是同一过程,创建分配内存,初始化赋值,A、B、D关于创建和初始化描述正确。86.以下关于方法重载的意义,描述错误的是?A.提高代码的可读性,让调用者更容易理解方法的用途B.增加代码的复杂度,使代码难以维护C.允许使用相同的方法名处理不同类型或数量的参数D.体现了多态性,增强了程序的灵活性答案:B。解析:方法重载提高代码可读性,允许用相同方法名处理不同参数,体现多态性增强程序灵活性,不会增加复杂度,反而便于维护,A、C、D描述正确,B错误。87.若有一个类A实现了接口B和接口C,接口B和接口C中有同名方法,以下说法正确的是?A.类A不需要实现该同名方法B.类A只需要实现接口B中的同名方法C.类A只需要实现接口C中的同名方法D.类A必须实现该同名方法一次答案:D。解析:类实现多个含同名方法的接口时,必须实现该同名方法一次,A、B、C错误。88.以下关于类的静态属性和静态方法的调用,说法错误的是?A.可以通过类名直接调用静态属性和静态方法B.可以通过对象引用调用静态属性和静态方法,但不推荐C.静态属性和静态方法在类实例化后才能调用D.静态方法中不能使用this关键字答案:C。解析:静态属性和方法在类加载时就可使用,不依赖类实例化,A、B、D关于调用描述正确。89.在面向对象编程中,以下关于对象的聚合和组合关系,说法错误的是?A.聚合关系中部分对象可以独立于整体对象存在B.组合关系中部分对象的生命周期依赖于整体对象C.聚合和组合关系都体现了整体与部分的关系D.聚合和组合关系没有本质区别答案:D。解析:聚合和组合有本质区别,聚合部分可独立,组合部分依赖整体,A、B、C关于二者关系描述正确。90.以下关于抽象类的继承,说法正确的是?A.子类继承抽象类后,不需要实现抽象类中的抽象方法B.一个抽象类只能被一个子类继承C.子类继承抽象类后,如果不实现抽象方法,子类也必须声明为抽象类D.抽象类继承和普通类继承规则完全不同答案:C。解析:子类继承抽象类若不实现抽象方法,子类需声明为抽象类,A错误,抽象类可被多个子类继承,B错误,和普通类继承有相似处,D错误。91.若有一个类A,类A中有一个私有构造函数,以下说法正确的是?A.类A不能被实例化B.类A只能在本类中实例化C.类A可以被任何类实例化D.类A的子类可以实例化它答案:B。解析:私有构造函数使类只能在本类中实例化,A错误,C错误,子类也不能直接实例化,D错误。92.以下关于方法的参数传递,对于引用类型参数,说法正确的是?A.传递的是对象的副本B.方法中对参数的修改不会影响原对象C.传递的是对象的引用,方法中对参数的修改会影响原对象D.引用类型参数传递和值类

温馨提示

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

评论

0/150

提交评论