一、填空题1、Java提供“包”来管理类名空间。
“包”实际上提供了一种_命名机制_和可见性限制机制。
2、使用createScreenCapture() 方法可以复制屏幕的一个矩形区域。
3、Final关键字修饰变量,则该变量_常量_。
Final修饰方法,则该方法_不允许其子类覆盖_。
Final修饰类,则该类_不会再被扩展_。
5、Java程序分两种,_ Java Application _和_Java Applet_。
6、final 关键字表明一个对象或变量在初始化不能修改。
7、在Java语言中,_ RandomAccessFile_文件允许对文件内容的随机读写。
8、一个Java的图形用户界面的最基本组成部分是_组件(Component)_。
9、java的特点:简单、面向对象、平台无关、多线程、安全、动态。
二、判断题1、在Java语言中,常量true、false、null都是使用小写。
y2、Package语句必须放在程序的第一句。
y3、因为Java不支持多继承,所以定义类时implements关键字后面只能说明一个接口名。
N4、我们把客观世界的实体称为问题空间的对象。
N5、一个Java类可以有多个父类。
N6、抽象类必须被继承。
Y7、在Java中声明变量时必须指定一个类型。
Y8、传统的结构化程序设计方法是产生60年代末开始的软件危机的原因。
N9、当通过实现Listener接口完成事件处理时,要同时实现该接口中的所有方法。
10、对多线程的支持是Java的一大特点。
Y三、选择题1、信息资源放在Web服务器后,需要把它的地址告诉大家,这就是b 的功能。
A.WWWB.URLC.BBSD.TCP/IP2、以下关于Applet的生命周期方法的说法哪个是不正确的?(d )A、init()B、start()C、stop()D、main()4、AWT中的Canvas类在使用时必须被(d )。
A.载入B.封装C.继承D.重载5、Java语言中的super关键字是(c )A.指向父类的指针B.父类的标识符C.对父类的引用D.指向父类对象的指针6、下列特点不属于Java语言的选项是(b )。
A.易用性B.可视性C.平台无关性D.面向对象性7、下列不属于面向对象特性的选项是(d )。
A.封装性B.继承性C.多态性D.鲁棒性8、在程序的运行过程中所发生的异常事件称为(b )。
A.意外B.例外C.事故D.中断9、高级数据要转换成低级数据,(c )转换。
A.不需要任何B.需要一般类型C.需要强制类型D.随机处理10、Java 的类属于(d )类型A、字符数据B、布尔数据C、简单数据D、复合数据面向对象特点:1.抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。
抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。
抽象包括两个方面,一是过程抽象,二是数据抽象。
2.继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。
对象的一个新类可以从现有的类中派生,这个过程称为类继承。
新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。
派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要。
3.封装:封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。
面向对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象。
4. 多态性:多态性是指允许不同类的对象对同一消息作出响应。
多态性包括参数化多态性和包含多态性。
多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。
Java异常处理:是描述在代码段中发生的运行出错情况的对象。
程序中的错误可能来自于编译错误和运行错误。
编译错误是由于所编写的程序存在语法问题,未能通过由源代码到目标代码的编译过程而产生的错误,它将由语言的编译系统负责检测和报告;运行错误是在程序的运行过程中产生的错误。
在程序执行中,任何中断正常程序流程的异常条件就是错误或异常。
第一种,Java 虚拟机检测到了非正常的执行状态,这些状态可能是由以下几种情况引起的:①表达式的计算违反了Java 语言的语义,例如整数被0 除。
②在载入或链接Java 程序时出错。
③超出了某些资源限制,例如使用了太多的内存。
第二种,Java 程序代码中的throw 语句被执行。
第三种,异步异常发生。
异步异常的原因可能有:①Thread 的stop 方法被调用。
②Java 虚拟机内部错误发生。
Java异常处理是通过5个关键字来管理的。
它们是try、catch、throw、throws和finally。
程序里,需要被监测的程序语句序列应包含在一个try代码块中。
如果try代码块中有异常发生,那么就要抛出该异常。
可以用catch来捕获这个异常,并且在catch块中加以适当地处理。
系统产生的异常会由Java运行时系统自动抛出。
如果要手动抛出异常,则使用关键字throw。
在一些情况下,从一个方法抛出的异常必须用一个throws语句指定为异常。
最后,从try代码块退出时,必须执行的代码要放在一个finally代码块中。
Abstract类与接口类的区别:1.abstract类和接口类都可以有abstract方法。
2.接口中只可以有常量,不能有变量;而abstract类中既可以有常量也可以有变量。
3.abstract类中也可以有非abstract方法,接口不可以。
. 1.abstract class 在 Java 语言中表示的是一种继承关系,一个类只能使用一次继承关系。
但是,一个类却可以实现多个interface。
2.在abstract class 中可以有自己的数据成员,也可以有非abstarct的成员方法,而在interface中,只能够有静态的不能被修改的数据成员(也就是必须是static final的,不过在 interface中一般不定义数据成员),所有的成员方法都是abstract的。
3.abstract class和interface所反映出的设计理念不同。
其实abstract class表示的是"is-a"关系,interface表示的是"like-a"关系。
4.实现抽象类和接口的类必须实现其中的所有方法。
抽象类中可以有非抽象方法。
接口中则不能有实现方法。
5.接口中定义的变量默认是public static final 型,且必须给其初值,所以实现类中不能重新定义,也不能改变其值。
6.抽象类中的变量默认是 friendly 型,其值可以在子类中重新定义,也可以重新赋值。
7.接口中的方法默认都是 public,abstract 类型的。
实例变量和类变量之间的区别:java的成员变量有两种:一种是被static关键字修饰的变量,叫类变量或者静态变量;另一种没有static修饰,为实例变量。
在语法定义上的区别:静态变量前要加static关键字,而实例变量前则不加。
在程序运行时的区别:实例变量属于某个对象的属性,必须创建了实例对象,其中的实例变量才会被分配空间,才能使用这个实例变量。
静态变量不属于某个实例对象,而是属于类,所以也称为类变量,只要程序加载了类的字节码,不用创建任何实例对象,静态变量就会被分配空间,静态变量就可以被使用了。
总之,实例变量必须创建对象后才可以通过这个对象来使用,静态变量则可以直接使用类名来引用。
习题31.输出110if-else语句书写的不够规范,复合语句缺少大括号“{}”,代码不够清晰。
2.你好好酷!!3.编写一个应用程序,用for循环输出俄文的“字母表”.public class Xiti3_3{public static void main (String args[ ]){int startPosition=0,endPosition=0;char cStart='а',cEnd='я';startPosition=(int)cStart; //cStart做int型转换据运算,并将结果赋值给startPositionendPosition=(int)cEnd ; //cEnd做int型转换运算,并将结果赋值给endPositionSystem.out.println("俄文字母表:");for(int i=startPosition;i<=endPosition;i++){char c='\0';c=(char)i; //i做char型转换运算,并将结果赋值给cSystem.out.print(" "+c);if((i-startPosition+1)%10==0)System.out.println("");}}}4.编写一个应用程序求1!+2!+3!+…+20!.public class Xiti4{ public static void main(String args[]){ double sum=0,a=1;int i=1;while(i<=20){ sum=sum+a;i++;a=a*i;}System.out.println("sum="+sum);}}5.编写一个应用程序求100以内的全部素数.class Xiti5{ public static void main(String args[]){ int i,j;for(j=2;j<=100;j++){ for(i=2;i<=j/2;i++){ if(j%i==0)break;}if(i>j/2){ System.out.print(" "+j);}}}}6.分别用while和for循环计算1+1/2!+1/3!+1/4!...的钱20项和.class Xiti6{ public static void main(String args[]){ double sum=0,a=1,i=1;while(i<=20){ sum=sum+a;i++;a=(1.0/i)*a;}System.out.println("使用while循环计算的sum="+sum);for(sum=0,i=1,a=1;i<=20;i++){ a=a*(1.0/i);sum=sum+a;}System.out.println("使用for循环计算的sum="+sum);}}7.一个数字如果恰好等于它的因子之和,这个数就称为“完数”。