Java考试复习整理PDF.pdf
《Java考试复习整理PDF.pdf》由会员分享,可在线阅读,更多相关《Java考试复习整理PDF.pdf(39页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、编程题页脚内容 1一、简答题2、Java程序是由什么组成的? Java 源文件的命名规则是怎样的?答:一个 Java 程序是由若干个 类组成的。但 只能有一个类是public 类。Java源文件命名规则是: 源文件 名必须与其中的 public 类的名字相同,扩展名是java;如果源文件中没有public 类,那么源文件的名字只要和某个类的名字相同,并且扩展名是java就可以了。3、Java语言与 Java技术的关系如何? Java语言包括哪两部分 ?答:Java语言是 Java技术的基础。 Java语言包括语法规则和Java类库两部分。4、开发与运行 Java程序需要经过哪些主要过程?答:源
2、程序编辑、字节码编译和解释运行。5、为什么一个 Java文件编译后可以获得多个字节码文件?答:这是因为一个源文件中可有多个类 ,文件经过编译后, 每个类 就生成一个 字节码文件(扩展名为class ) 。7、面向对象的开发方法与传统的面向过程的开发方法有什么不同?答:传统的面向过程的开发方法是把现实世界的问题转化成计算机逻辑,而面向对象技术是 计算机逻辑来模拟现实世界的问题。8、什么是对象、类和实体 ?它们之间的关系如何?编程题页脚内容 2试述下面的说法映射到面向对象的计算机逻辑中分别对应什么概念。(1) 计算机 92班(2)计算机 92班的同学刘利(3)大学生(4)X大学的大学生(5)班级答
3、:对象是现实世界中某个具体的物理实体在计算机逻辑中的映射和体现;类是同种对象的集合与抽象。(1) 班级类的对象(2)大学生类的对象(3)大学生类(4)大学生类的子类(5)班级类9、对象有哪些属性?在计算机逻辑中如何描述这些属性?答:对象有状态、行为、标志三个属性;在计算机逻辑中分别用 对象的变量、方法和对象名来描述这三个属性。10、面向对象的开发包括哪些过程?答:面向对象的分析 (OOA) 、面向对象的设计 (OOD) 、面向对象的开发 (OOP) 、面向对象的维护。11 、面向对象程序设计方法有哪几个最重要的特点?答:抽象、封装、继承、多态。12、什么是父类 (超类)?什么是子类 ?父类、子
4、类间属性有何关系?答:当两个类具有继承关系时,被继承的类称为父类或超类;继承了父类或超类的所有数据和操作的类称为子类。 父类是所有子类的公共属性的集合,而每一个子类则是父类的特殊化 ,是在公共属性的基础上的功能、内涵的扩展和延伸。13、什么是封装?答:封装就是指利用 抽象数据类型 将数据和基于数据的操作 封装在一起, 数据被保护在抽象数据类编程题页脚内容 3型的内部,系统的其它部分只有通过包裹在数据外面的被授权的操作,才能够与这个抽象数据类型交流和交互。14、 使用继承有什么好处?什么是单重继承?什么是多重继承?Java采用的是单重继承还是多重继承?答:使用继承的主要好处是使得程序结构清晰,降
5、低了编码和维护的工作量。只有一个单一父类称为单重继承 。一个类可以有一个以上的父类称为多重继承。Java采用的是单重继承 。15、什么是多态?实现多态有哪些方式?答:一个程序中 同名的不同方法共存 的情况称为多态。实现多态的方式有覆盖和重载 。16、什么是覆盖多态?什么是重载多态?覆盖多态和重载多态分别如何区分不同的同名方法?答:子类对继承自父类的方法 的重新定义 就称为方法的覆盖, 这种多态称为覆盖多态; 类对自身已有的同名方法的重新定义称为重载,这种多态称为重载多态。覆盖多态以对象名或类名为前缀来区分不同的同名方法 ;而重载多态则是 使用不同 的参数列表 来区分不同的同名方法。17、类及类
6、成员 的访问控制符 有哪些 ?答:类成员: public,protected ,friendly(default),private类:public,final,abstract,protected (不加任何说明的缺省值)18、构造函数特殊在哪里?构造函数什么时候执行?被谁调用?答:构造函数的特殊性在于它既可以从父类那里继承,也可以相互重载。构造函数 在创建新对象时执行,由系统自动调用。21、关键字 static可以修饰哪些类的组成部分?编程题页脚内容 4答:可以修饰 属性 、方法、静态初始化器 。22、什么是静态初始化器?静态初始化器与构造函数有什么不同?答: 静态初始化器是由关键字stat
7、ic引导的一对大括号括起的语句组, 其作用与类的构造函数有些相似,p 都是用来完成 初始化 的工作,但静态初始化器在三点上与构造函数有根本的不同:(1)构造函数是对每个新创建的对象初始化,而静态初始化块是 对类自身进行初始化,只在类的第一个对象创建之前执行一次。(2)构造函数是在用new运算符产生新对象时由系统自动执行,而静态初始化块则是 在它所属的类加载入内存时由系统调用执行。(3)不同于构造函数,静态初始化块不是方法 ,没有方法名、返回值和参数列表。23、静态属性有什么特点?类对象可以访问或修改静态属性吗?答:静态属性 是类的属性 ,不专属于某个方法, 类对象可以访问或修改静态属性。24、
8、设某程序创建了类MyClassl 的两个对象 ,试写出静态初始化器和构造函数执行的前后次序与次数。答:先执行类 MyClassl 的静态初始化器一次,再执行构造函数两次。25、抽象方法有什么特点?抽象方法的方法体在何处定义?答:抽象方法 的特点是用 abstrac t 修饰符修饰, 只有方法头没有具体的方法体。抽象方法在定义该方法的 抽象类的非抽象子类中定义。26、final 修饰符可以用来修饰什么?被final 修饰符修饰后有何特点 ?编程题页脚内容 5答:final 修饰符可用来修饰 类、属性、方法和终结器。被 final 修饰符修饰的类没有子类。被 final 修饰符修饰的属性 在程序整
9、个执行过程中都不能改变。被 final 修饰符修饰的方法 是功能和内部语句不能更改的最终方法。被 final 修饰符修饰的终结器 (以称析构器 finalize()方法,是在对象被删除前进行收尾工作的方法)也是不能更改的。27、哪些修饰符不能组合使用?答: abstract与 final(课本 P62,final 方法可以被继承但是不能被修改,但被final 修饰符修饰的类没有子类),abstract与 private,abstract与 static ,构造函数不能是静态的,因为构造函数是创建对象时自动调用。28、书写语句完成下面的功能。(1)定义一个类,其名称为MyClass,类体为空 ,
10、它可以被所有的其他类访问。(2)将对象 Objectl的属性 fieldl 在屏幕上显示出来。答: (1)public class MyClass (2)System.out.print( Object1.field1 );29、书写语句完成下面的功能。()调用对象 Objectl的方法 methodl,把返回值赋值给变量Hold。()定义一个整型属性Mine ,使得 只有这个类本身可以访问它。答:(1) Hold=Object1 .method1(); (2) private int Mine;30、书写语句完成下面的功能。(1) 为类 Classl 定义一个整型 变量 field2,使得所
11、有其他类都可以访问它。编程题页脚内容 6(2)定义一个无形式参数无返回值的方法method2 ,使得 使用类名 Classl 作前缀就可以调用它 。答:(1) public class Class1public int field2; (2) static void method2() 类的静态方法31、书写语句完成下面的功能。(1) 为类 Class2 编写构造函数 的方法头,该构造函数不接受形式参数。(2)为类 Class2 编写构造函数的方法头,该构造函数接受两个整型形式参数。答:(1) Class2() (2) Class2(int c1,int c2)32、书写语句完成下面的功能。(
12、)创建类 Classl 的一个对象 Objectl ,定义这个类的一个引用Refl,把对象 Objectl的引用赋给 Ref1 。(2)为类 Classl 创建一个 静态整型变量 s_data 。答:(1) Class1 Object1=new Class1();左边创建了一个对象Class1 Ref1=Object1; 右边创建了一个引用(2) static int s_data;33、Java中如何定义继承关系?写出定义类库中的类java.awt.Frame 的子类 MyFrame 的类头的语句。答:Java中是通过 extends关键字 定义继承关系 的,其语句的一般格式是:class
13、子类 extends 父类。import java.awt.*;class MyFrame extends Frame34、设父类 SuperClass 中定义了 公共整型属性 SuperProperty ,SuperClass 的子类 SubClass 中定义了公共整型属性 SubProperty ,则属性 SubClass.SuperProperty是否存在 ?来自何处 ?编程题页脚内容 7答:存在,这个属性是 从其父类那里继承来的 。35、什么是多重继承? Java是否支持多重继承? Java采取什么机制来替代多重继承?答:一个子类有多个父类的情况称为多重继承,Java不支持多重继承,
14、Java用实现接口 的方法替代多重继承。36、什么是属性(域)的隐藏?答:子类 重新定义 一个与从父类那里继承来 的属性 完全相同的属性,称为属性的隐藏。37、一个类里是否可以有同名属性共存的情况?是否最多只能有两个同名的属性。答:子类重新定义父类的同名属性可以实现同名属性共存,若此子类的同名属性又被其子类所隐藏,可以有更多的同名属性共存。38、一个类里有同名属性共存的情况下,如何分别操纵这些同名的属性?答:使用 子类定义 的方法将操纵子类定义的属性 ;使用 继承自父类的方法将操纵父类定义的属性 。39、子类重新定义 与父类方法的 方法头完全相同 的方法,这种情况称为什么?此时子类中还能找到父
15、类原来的方法吗?答:这种情况称为方法的 覆盖 ,此时,在子类中已不能找到父类原来的方法,它的内存位置已经被替代。40、同名的不同方法共存的情况称为什么?如何区分这些同名方法?答:这种情况称为方法的 重载 。不同类的同名方法用类名区分,同类的同名方法用形式参数数目、顺序和类型区分。编程题页脚内容 841、Java中的多态有哪些方式?答:Java中的多态有两种方式,第一种是 子类对父类方法的覆盖,第二种是 同类中方法的重载 。42、“ 重载中,两个同名方法只要返回类型或参数列表不同即可互相分辨” 这种说法是否正确?为什么?答:不正确, 仅仅返回类型不同不能区分同名方法,必须参数列表不同。43、试解
16、释 this和 super两个关键字,其中this指代的是一个类还是一个具体的对象?答:this 表示的是 当前对象本身 ,即 this代表了 当前对象 的一个引用 。super表示的是 当前对象的父类对象,是当前对象的直接父类对象的引用。this指代的是一个具体对象。44、子类 SubClass 重新定义并覆盖了父类SuperClass 中的方法 methodl() ,如何使子类能够调用 父类原先定义的方法 methodl()? 答:super.methodl() ;45、构造函数可以继承吗?子类继承父类的构造函数应遵循哪些原则?答:子类可以继承父类的构造函数,构造函数的继承原则有:(1)子
17、类 无条件 地继承父类的 不含参数的构造函数 ;(2)如果子类 自己没有构造函数 ,则它将继承父类的无参数构造函数作为自己的构造函数,如果子类自己定义了构造函数, 则在创建新对象时 ,它将 先执行继承自父类的无参数构造函数,然后再执行自己的构造函数。(3)对于父类的含参数的构造函数,子类可以通过在自己构造函数中使用super关键字来调用它,但这个调用语句必须是子类构造函数的第一个可执行语句。46、一个构造函数如何 调用同类的其他构造函数?如何调用父类的构造函数?答:在 同类 中使用 this,调用父类 的构造函数使用 super。47、什么是包?如何创建包?为什么要使用包?包物理地对应什么?编
18、程题页脚内容 9答:包是相关类 的松散集合。使用package语句可以创建包 。使用包可以 方便相关的类共同工作 ,也方便其他包中的类引用它们 。包物理地对应文件夹,其中应保存包中类的字节码文件。48、试写出一个语句 创建一个名为 MyPackage 的包,这个语句应该放在程序的什么位置?答:package MyPackage;应该在 程序第一句 。49、试写出引用 MyPackage 中所有类 的语句和引用 MyPackage 包中的一个类 MyClassl 。答:引用 MyPackage 中所有类 的语句是 import MyPackage.* ;只能引入类引用 MyPackage 包中的
19、一个 类 MyClass 的语句是 import MyPackage.MyClassl;50、什么是接口?它起到什么作用?答:接口可看成是一种特殊的 类,但接口不是类课本P61 ,是用来实现 类间多重继承功能的结构。51、接口中包括什么 ?接口中的各成员的访问控制符是一样的吗?是什么 ?答:接口中包括 常量与抽象方法 。接口中的 属性成员 的访问控制符都是public static final ,接口中的所有 方法 的访问控制符 都是 public abstract ,都是公共方法 。52、创建接口使用什么关键字?接口可以有父接口吗?试书写语句创建一个名为 MyInterface的接口 ,它是
20、实现了 MySuperInterfacel 和 MySuperInterface2 两个接口的子接口。答:创建接口使用 interface关健字, 一个类 声明实现实现接口 在类头处使用 用 implements关健字 ,接口可以有父接口,用extends关健字实现继承课本 P61 。Interface MyInterface implements MySuperInterfacel,MySuperInterface254、实现接口的类是否必须覆盖该接口的所有抽象方法?编程题页脚内容 10答:如果这个类是非抽象类的话,就必须覆盖该接口的所有抽象方法。55、 实现接口的抽象方法时 , 方法头 应
21、该与接口中定义的方法头完全一致, 但是有时需要 增加一个 public修饰符 ,为什么 ?答:接口的抽象方法 的访问限制符都己指定为public,所以类在实现方法时 ,必须显式地使用public修饰符 ,否则将被系统警告为缩小了接口中定义的方法的访问控制范围。56、程序中的错误分为哪两类?分别应如何排除 ? 答:编译错误 和运行错误 。排除 编译错误 可以借助于 编译器的错误提示 ,排除运行错误 要使用 断点、单步运行 等用户控制流程 的调试手段 。58、写出三个常见的 系统定义的异常 ,它们都是什么类的子类 ?答:三个常见的系统异常是InterruptedException ,ClassNo
22、tFoundException ,IOException 。它们都是 Exception 类的子类 。59、用户程序如何抛出 自己的异常 ?系统定义的异常 如何抛出 ?答:用户程序使用throw关键字抛出异常。系统定义的异常由系统在合适的时刻自动抛出。62、阅读下面的程序片段并回答问题。class Classlint fieldl;编程题页脚内容 11private int field2;void methodl()System.out.println(“我是 Classl 的第一个方法 ”);void method2()System.out.p dntln(“我是 Classl 的第二个方法
23、 ”);class Class2 extends Classlint fieldChildl;int fieldl;void methodChildl() System.out.pnntln(“我是 Class2 的第一个方法 ”);编程题页脚内容 12void methodl()S ystem.out.println(“我是 Class2 的第二个方法 ”);(2)Classl 有哪些方法和属性? Class2 有哪些方法和属性?其中哪些与C1assl 的方法和属性有关,是什么关系?答:(2)Classl 包括属性 fieldl 和 field2,方法 methodl和 method2 ;C
24、lass2 包括自身定义的属性fieldChildl和fieldl 以及从父类继承的属性fieldl,方法包括 Class2 自身定义的 methodChildl和 methodl及其从父类继承的 method2 。65、Java中最基础的类库是什么?谁是所有类的根类?做算术运算应该使用什么类?答:Java中最基础的类库是java.lang;Object类是所有类的根类;做算术运算应该使用Math类。67、为程序建立图形用户界面通常需要哪些步骤?答: (1)设计图形用户界面的层次组织;(2)设计并实现图形用户界面的外观;(3)设计并实现图形用户界面的事件响应。68、Java的图形界面的 容器共
25、有几种常用的布局管理策略?面板既是容器也是组件编程题页脚内容 13答:有五种常用的布局,它们是FlowLayout 、BorderLayout 、CardLayout 、GridLayout 、null69、对话框 Dialog 对象根据其性质不同,可以划分为哪两种类型?缺省情况下创建的对话框属于哪种类型?答:可划分为有模式对话框和无模式对话框两种类型,缺省情况下创建的对话框是无模式的。70、有模式的对话框最突出的特点是什么?如果一个对话框的目的在于警告或提醒用户(例如在用户删除某组件之前的确认 ),这个对话框应该是有模式的还是无模式的?答:有模式对话框的特点是阻断其父组件接受事件和消息的渠道
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 考试 复习 整理 PDF
限制150内