不属于传统面向过程计算机语言,Java习题集3 - 图文

2 4 6 8 10 28 32 53 简答题 单选全部 判断题全部

1 2 3 5 6 7 10 21 写程序题 2 3 7 8 24 25 编程题

JAVA语言程序设计习题集

50-55接口。

一、简答题

1、Java程序分为哪两大类,它们之间有哪些相同点?主要区别有哪些? 答:Java程序分为Java Application和Java Applet。

相同点有两个:(1)两类程序都由一个或多个以.class为后缀的文件组

成;(2)两类程序都需要用户系统安装Java虚拟机(JVM)。Java虚拟机能够载入并翻译Java程序,并且可以提供Java内核包的实现。

区别有:(1)Java Applet程序可以被嵌入HTML网页内,从而可以在网

络上发布,当网页被浏览时它们可以在浏览器中运行;而Java Application程序却不支持网页嵌入和下载。(2)Java Applet程序只能在与Java兼容的容器中运行,例如网络浏览器;而Java Application程序却没有这个限制。(3)一个Java Applet程序必须定义一个Applet类的子类,一个Java Application程序也可以定义一个Applet类的子类,但这不是必须的,一个 Java Application程序必须在一个类中定义一个main方法,而一个Java Applet 程序并不定义main方法,它的执行是由Applet类定义的多个方法控制的。

2、Java程序是由什么组成的?Java 源文件的命名规则是怎样的?

答:一个Java 程序是由若干个类组成的。但只能有一个类是public 类。Java源文件命名规则是:源文件名必须与其中的public 类的名字相同,扩展名是java;如果源文件中没有public 类,那么源文件的名字只要和某个类的名字相同,并且扩展名是java就可以了。

3、Java语言与Java技术的关系如何?Java语言包括哪两部分?

答:Java语言是Java技术的基础。Java语言包括语法规则和Java类库两部分。

4、开发与运行Java程序需要经过哪些主要过程? 答:源程序编辑、字节码编译和解释运行。

5、为什么一个Java文件编译后可以获得多个字节码文件?

答:这是因为一个源文件中可有多个类,文件经过编译后,每个类就生成一个字节码文件(扩展名为class)。

6、简述Java应用程序和Java小应用程序各用什么方式解释运行的?

答:Java应用程序和Java小应用程序的源代码编辑与字节码编译生成过程是一样的,而其执行也都是解释执行其编译好的字节码文件,只是Java应用程序需使用独立的Java解释器来解释执行其字节码文件,而Java小应用程序的字节码文件必须嵌入到HTML语言的文件中并由负责解释HTML文件的WWW浏览器充

- 1 -

当其解释器,来解释执行Java小程序的字节码文件。

7、面向对象的开发方法与传统的面向过程的开发方法有什么不同?

答:传统的面向过程的开发方法是把现实世界的问题转化成计算机逻辑,而面向对象技术是计算机逻辑来模拟现实世界的问题。

8、什么是对象、类和实体?它们之间的关系如何?试述下面的说法映射到面向对象的计算机逻辑中分别对应什么概念。

(1)计算机92班 (2)计算机92班的同学刘利 (3)大学生 (4)X大学的大学生 (5)班级

答:对象是现实世界中某个具体的物理实体在计算机逻辑中的映射和体现;类是同种对象的集合与抽象。

(1)班级类的对象 (2)大学生类的对象 (3)大学生类 (4)大学生类的子类 (5)班级类

9、对象有哪些属性?在计算机逻辑中如何描述这些属性?

答:对象有状态、行为、标志三个属性;在计算机逻辑中分别用对象的变量、方法和对象名来描述这三个属性。 10、面向对象的开发包括哪些过程?

答:面向对象的分析(OOA)、面向对象的设计(OOD)、面向对象的编程(OOP)、面向对象的测试。

11、面向对象程序设计方法有哪几个最重要的特点?

答:抽象、封装、继承、多态。

12、什么是父类(超类)?什么是子类?父类、子类间属性有何关系?

答:当两个类具有继承关系时,被继承的类称为父类或超类;继承了父类或超类的所有数据和操作的类称为子类。父类是所有子类的公共属性的集合,而每一个子类则是父类的特殊化,是在公共属性的基础上的功能、内涵的扩展和延伸。 13、什么是封装?

答:封装就是指利用抽象数据类型将数据和基于数据的操作封装在一起,数据被保护在抽象数据类型的内部,系统的其它部分只有通过包裹在数据外面的被授权的操作,才能够与这个抽象数据类型交流和交互。

14、使用继承有什么好处?什么是单重继承?什么是多重继承?Java采用的是单重继承还是多重继承? 答:使用继承的主要好处是使得程序结构清晰,降低了编码和维护的工作量。只有一个单一父类称为单重继承。一个类可以有一个以上的父类称为多重继承。Java采用的是单重继承。

15、什么是多态?实现多态有哪些方式?

答:一个程序中同名的不同方法共存的情况称为多态。实现多态的方式有覆盖和重载。 16、什么是覆盖多态?什么是重载多态?覆盖多态和重载多态分别如何区分不同的同名方法?

答:子类对继承自父类的方法的重新定义就称为方法的覆盖,这种多态称为

- 2 -

覆盖多态;类对自身已有的同名方法的重新定义称为重载,这种多态称为重载多态。覆盖多态以对象名或类名为前缀来区分不同的同名方法;而重载多态则是使用不同的参数列表来区分不同的同名方法。 17、类及类成员的访问控制符有哪些?

答:public,protected,private,private protected。

????18、构造函数特殊在哪里?构造函数什么时候执行?被谁调用?

答:构造函数的特殊性在于它既可以从父类那里继承,也可以相互重载。

构造函数在创建新对象时执行,由系统自动调用。

19、类的访问说明符有哪些?

答:有public,final,abstract,protected(不加任何说明的缺省值) 20、方法访问说明符有哪些?

答:有public,protected,private,default。 21、关键字static可以修饰哪些类的组成部分? 答:可以修饰属性、方法、静态初始化器。

22、什么是静态初始化器?静态初始化器与构造函数有什么不同?

答:静态初始化器是由关键字static引导的一对大括号括起的语句组,其作用与类的构造函数有些相似,都是用来完成初始化的工作,但静态初始化器在三点上与构造函数有根本的不同:

(1)构造函数是对每个新创建的对象初始化,而静态初始化器是对类自身进行初始化。

(2)构造函数是在用new运算符产生新对象时由系统自动执行,而静态初始化器则是在它所属的类加载入内存时由系统调用执行。

(3)不同于构造函数,静态初始化器不是方法,没有方法名、返回值和参数列表。

23、静态属性有什么特点?类对象可以访问或修改静态属性吗?

答:静态属性是类的属性,不专属于某个方法,类对象可以访问或修改静态属性。

24、设某程序创建了类MyClassl的两个对象,试写出静态初始化器和构造函数执行的前后次序与次数。

答:先执行类MyClassl的静态初始化器一次,再执行构造函数两次。 25、抽象方法有什么特点?抽象方法的方法体在何处定义?

答:抽象方法的特点是用abstract修饰符修饰,只有方法头没有具体的方法体。

抽象方法在定义该方法的抽象类的非抽象子类中定义。

26、final修饰符可以用来修饰什么?被final修饰符修饰后有何特点?

答:final修饰符可用来修饰类、属性、方法和终结器。

被final修饰符修饰的类没有子类。被final修饰符修饰的属性在程序整个执行过程中都不能改变。被final修饰符修饰的方法是功能和内部语句不能更改的最终方法。被final修饰符修饰的终结器(以称析构器——finalize()

- 3 -

方法,是在对象被删除前进行收尾工作的方法)也是不能更改的。 27、哪些修饰符不能组合使用?

答:abstract与private,abstract与final,abstract与static。 28、书写语句完成下面的功能。

(1)定义一个类,其名称为MyClass,类体为空,它可以被所有的其他类访问。

(2)将对象Objectl的属性fieldl在屏幕上显示出来。

答:(1)public class MyClass{}

(2)System.out.print(Object1.field1); 29、书写语句完成下面的功能。

(1)调用对象Objectl的方法methodl,把返回值赋值给变量Hold。 (2)定义一个整型属性Mine,使得只有这个类本身可以访问它。 答:(1) Hold=Object1.method1(); (2) private int Mine; 30、书写语句完成下面的功能。

(1)为类Classl定义一个整型变量field2,使得所有其他类都可以访问它。 (2)定义一个无形式参数无返回值的方法method2,使得使用类名Classl作前缀就可以调用它。

答:(1) public class Class1{public int field2;} (2) static void method2() 31、书写语句完成下面的功能。

(1)为类Class2编写构造函数的方法头,该构造函数不接受形式参数。 (2)为类Class2编写构造函数的方法头,该构造函数接受两个整型形式参数。

答:(1) Class2()

(2) Class2(int c1,int c2) 32、书写语句完成下面的功能。

(1)创建类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 子类 extends 父类。

import java.awt.*;

class MyFrame extends Frame

34、设父类SuperClass中定义了公共整型属性SuperProperty,SuperClass的

- 4 -

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值