JAVA考试复习题
Java考试复习题
Java考试复习题JAVA程序设计练习一、填空题1、目前Java运行平台主要分为下列3个版本是Java se ,Java ee ,Java me 。
2、SDK平台提供的Java编译器是javac.exe 和Java解释器java.exe 位于Java安装目录的bin 文件夹中。
3、Java运行环境JRE由Java虚拟机、Java的核心类以及一些支持文件组成。
4、一个Java应用程序必须有一个称为主类的类,该类含有public static void main (String args[ ])方法。
5、在源文件的命名中如果源文件中有多个类,那么只能有一个类是public类;如果有一个类是public类,那么源文件的名字必须与这个类的名字完全相同,扩展名是java;6、一个Java Applet源文件不再需要main方法,但必须有且只有一个类扩展了Applet类,我们把这个类称作Java Applet源文件的主类。
7、类是组成Java程序的基本要素。
类封装了一类对象的状态和方法。
8、创建一个对象包括对象的声明和为对象分配成员变量两个步骤,对象的声明的一般格式为:类的名字对象名字;使用new运算符和类的构造方法为声明的对象分配成员变量9、用关键字static修饰的成员变量称作静态变量或类变量,类变量不仅可以通过某个对象访问也可以直接通过类名访问。
10、一个类中的方法可以互相调用:实例方法可以调用该类中实例方法或类方法;类方法只能调用该类的类方法,不能调用实例方法。
11、实例方法可以操作实例变量或类变量;而类方法只能操作类变量不能操作实例变量。
12、this关键字出现在类的构造方法中,代表使用该构造方法所创建的对象;this 关键字出现在类的实例方法中,代表使用该方法的当前对象。
13、成员变量在整个类内有效,局部变量仅在方法内有效,如果在方法内部局部变量的名字与成员变量的名字相同,则成员变量被隐藏,此时若要使用成员变量,格式为:this.成员变量。
java复习题带答案
一、选择题:1.运行Java程序需要的工具软件所在的目录是 A。
A.JDK的bin目录 B.JDK的demo目录C.JDK的lib目录 D.JDK的jre目录解析:运行Java的JDK一共包含五个目录,分别是:bin目录,该目录包含Java编译器、解释器和许多工具(如服务器工具、IDL、package工具等);lib目录,该目录包含Java 库文件jre目录,该目录是Java程序运行环境的根目录,它下面包含 bin子目录,包括平台所用工具和库的可执行文件以及DLL文件;demo目录,该目录包含源代码的程序示例;include目录,该目录包含Win32子目录,都是本地方法的文件。
因此,本题的正确答案是A。
2.下列关于Java语言特点的叙述中,错误的是 A 。
A.Java是面向过程的编程语言 B.Java支持分布式计算C.Java是跨平台的编程语言 D.Java支持多线程解析:Java是新一代编程语言,具有很多特点:简单易学;利用面向对象技术:分布式计算:健壮性(鲁棒性);安全性;跨平台(即体系结构中立):可移植性:解释执行;高性能;多线程;动态性。
因此,本题的正确答案是A。
3.Java的核心包中,提供编程应用的基本类的包是 A 。
A.ng B.java.util C.java.applet D.java.rmi解析:Java的核心包一共有12个,其中:ng包中封装了所有编程应用的基本类;java.util包提供实用程序类和集合类,如系统特性定义和使用、日期函数类、集合等常用工具;java.applet包为Applet提供执行需要的所有类,。
主要是访问Applet内容的通信类。
java.rmi包提供程序远程方法调用所需的类。
因此,本题的正确答案是A。
4.下列关于Java对import语句规定的叙述中,错误的是 C 。
A.在Java程序中import语句可以有多个B.在Java程序中import语句可以没有C.在Java程序中import语句必须有一个D.在Java程序中import语句引入在所有类定义之前解析:Java程序中使用import关键字导入一个包中的类。
JAVA复习题
JAVA复习题一、选择题:1. Java源程序经编译生成的字节码文件的扩展名为( )A. classB. javaC. exeD. html2. 以下定义一维数组的语句中,正确的是:( )A. int a[5]B. int a[]=new [5];C. int a[]; int a=new int[5];D. int a[]={1,2,3,4,5};3. 对于任意一个类,用户所能定义的构造方法的个数至多为()A.0个B.1个C.2个D.任意个4. 假设类A有构造方法A(int a),则在类A的其他构造方法中调用该构造方法的语句格式应为( )A. A(x)B. this. A(x)C. this(x)D. super(x)5.关于实例方法和类方法,以下描述正确的是:( )A. 实例方法只能访问实例变量B. 类方法既可以访问类变量,也可以访问实例变量C. 类方法只能通过类名来调用D. 实例方法只能通过对象来调用6.下列关于继承的说法哪个是正确的()A.子类只继承父类public方法和属性;B.子类继承父类的非私有属性和方法;C.子类只继承父类的方法,而不继承父类的属性;D.子类将继承父类的所有的属性和方法。
7、不允许作为类及类成员的访问控制符的是( )。
A. publicB. privateC. staticD. protected8、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )。
A. static void method( )B. public void method( )C. final void method( )D. abstract void method( )9、设有下面的两个类定义:class AA {void Show(){ System.out.println(“我喜欢Java!”);}class BB extends AA {void Sh ow(){ System.out.println(“我喜欢C++!”);}则顺序执行如下语句后输出结果为:()AA a; BB b;a.Show();b.Show();A、我喜欢Java!B、我喜欢C++!我喜欢C++! 我喜欢Java!C、我喜欢Java!D、我喜欢C++!我喜欢Java! 我喜欢C++!10、Java的字符类型采用的是Unicode编码方案,每个Unicode 码占用()个比特位。
JAVA复习习题
类的继承习题一、选择题1. Java语言的类间的继承关系是( B )。
A) 多重的 B) 单重的 C) 线程的 D) 不能继承2. 以下关于Java语言继承的说法正确的是( C )。
A)Java中的类可以有多个直接父类 B)抽象类不能有子类C)Java中的接口支持多继承 D)最终类可以作为其它类的父类3. 现有两个类A、B,以下描述中表示B继承自A的是(D)。
A) class A extends B B) class B implements AC) class A implements B D) class B extends A4. 下列选项中,用于定义接口的关键字是( A)。
A)interface B) implements C) abstract D) class5. 下列选项中,用于实现接口的关键字是( B)。
A)interface B) implements C) abstract D) class6. Java语言的类间的继承的关键字是( B )。
A) implements B) extends C) class D) public7. 以下关于Java语言继承的说法错误的是( A )。
A)Java中的类可以有多个直接父类 B)抽象类可以有子类C)Java中的接口支持多继承 D)最终类不可以作为其它类的父类8. 现有两个类M、N,以下描述中表示N继承自M的是(D)。
A) class M extends N B) class N implements MC) class M implements N D) class N extends M9. 现有类A和接口B,以下描述中表示类A实现接口B的语句是(A)。
A) class A implements B B) class B implements AC) class A extends B D) class B extends A10. 下列选项中,定义抽象类的关键字是( C)。
JAVA复习题答案
A、x>0
B、x<=0 并且 x>-3 C、x>-3
D、x<=-3
6、属于main()方法的返回类型是( C )
A、public
B、static
C、void D、main
7、Java语言使用的字符码集是 ( D )
A、ASCII
B、 BCD
C、DCB
D、Unicode
*8、下列关于构造方法的叙述中,错误的是( C )(构造函数不可被子类继承)
26、下列命题中,错误的是
(A)
A、Java 编程时,要求应尽量多用公共变量
B、Java 编程时,要求应尽量少用公共变量
C、Java 编程时,要求应尽量不用公共变量
D、Java 编程时,要求应尽量使用私有变量
27、推出 Java 语言的公司是
(D)
A. IBM B. Apple C. Microsoft
的功能不同,称为子类对父类中同名方法的 覆盖
。
8.同一个类中多个方法具有相同的方法名,不同的参数列表称为方法的 重载 。
9.Java源程序的编译命令是 javac
。
10、在一个Java源文件中定义了2个类,每个类中都有5个方法,编译该java源文件时会产生
50、在成员变量的修饰符中,规定只允许该类自身访问的修饰符是( A )
A. private B. public C. 默认 D.protected
二、填空题
1、Java 编译后产生字节码文件,该文件通过 虚拟机
解释执行。
2、接口可以看作是仅包括 抽象 类。
方法、常量,而又不能直接生成对象的特殊抽象
3、Java 语言的循环语句包括 for 语句、do-while 语句和 while
JAVA考试复习题(附答案)
7、以下有关构造方法的说法,正确的是:( A )
A.一个类的构造方法可以有多个 B.构造方法在类定义时被调用
C.构造方法只能由对象中的其它方法调用
D.构造方法可以和类同名,也可以和类名不同
8、以下有关类的继承的叙述中,正确的是:( D )
A.子类能直接继承父类所有的非私有属性,也可通过接口继承父类的私有属性
C.数组属于简单数据类型 D.Java中的指针类型和C语言的一样
4、设 int x=1,float y=2,则表达式 x / y的值是:( D )
A.0 B.1 C.2 D.以上都不是
5、以下语句有语法错的是:( A )
A.int x=1;y=2;z=3 B.for (int x=10,y=0;x>0;x++);
A.构造方法必须是public方法 B.main方法必须是public方法
C.Java应用程序的文件名可以是任意的 D.构造方法应该声明为void类型
3、关于Java中数据类型叙述正确的是:( B )
A、整型数据在不同平台下长度不同 B.boolean类型数据只有2个值,true和false
10、关于Java中异常的叙述正确的是:( D )
A.异常是程序编写过程中代码的语法错误 B.异常是程序编写过程中代码的逻辑错误
C.异常出现后程序的运行马上中止 D.异常是可以捕获和处理的
11、所有的异常类皆继承哪一个类?( C )
A.java.io.Exception B.ng.Throwable
B.子类只能继承父类的方法,不能继承父类的属性
C.子类只能继承父类的非私有属性,不能继承父类的方法
Java复习题
Java复习题一、选择题1、以下代码执行后的输出结果是()char chA=’A’,chB=’b’;if (chA+27<chB) ++chA;System.out.println(“*”+chA+”*”);A、/*A*B、*B*C、*C*D、*a*2、执行以下代码后,打印出来的y的值是()int x=8,y=2;if (Math.pow(x,y)= =64)y=x;if (Math.pow(x,y)<63)y=2*x;if (Math.pow(x,y)>63)y=x/2;System.out.println(y);A、2B、4C、8 D.163、以下代码执行后的输出结果是()int i=1;switch(i){ case 0: System.out.print(“Zero”);break;case 1: System.out.print(“One”);case 2: System.out.print(“Two”);default: System.out.print(“Default”); }A、ZeroOneTwoDefaultB、OneTwoDefaultC、DefaultD、One4、以下代码执行后的输出结果()int a=-1;for(int i=4;i>0;i--){ a+=i;System.out.print(a);}A、-1B、368C、3689D、95、有以下代码片段,关于代码的编译,正确的说法()int iVar;for (iVar=1; iVar<=5; iVar++);{ System.out.print(iVar); }A、代码成功编译,执行后,输出为12345B、代码成功编译,执行后,输出为6C、代码成功编译,执行后,输出为1D、代码编译不成功,编译器将生成一些错误6、以下代码执行后的输出结果是()int a=6,b=3,c=0;switch(a%b){ case 2:c=a+b;case1:c=a-b;case 0:c=a*b;default:c=a/b;}System.out.println(c);A、2B、3C、9D、187、以下代码执行后,输出字符变量ch的值为()char ch=32for(int i=0;i<=400;i++){ switch(i%4){ case 1:ch=’a’;break;case2: ch=’b’;break;case 3: ch=’c’;break;default: ch=’d’;break;}}System.out.println(ch);A、aB、bC、cD、d8、下面的循环将执行()次int i=4,j=2;while(--i!=i/j){ System.out.println(i); }A、3B、2C、1D、09、分析以下代码,正确的一项是()for(int i=-2; true; i++){ if (i==0) continue;if(i>2) break;System.out.print(4/i+””);}A、程序编译通过,但运行出现死循环B、程序编译通过,但运行出现异常C、上述代码无法通过编译D、程序运行成功,打印出:-2 -4 4 210、关于以下代码的分析中,正确的一项是()int i=32767;while(--i>0);System.out.print(i);A、代码不能编译通过B、在程序运行阶段出现死循环C、成功执行,打印出结果1D、成功执行,打印出结果011、子类可以继承父类的()成员A、非私有B、私有C、publicD、protected12、若要定义一个不能被实例化的抽象类,则在类定义中必须加上修饰符(D)A、publicB、finalC、abstractD、private13、以下程序片段将创建()个对象int a=10;String b=”abc”;String c=new String(“abc”);MyTest test=new MyTest();A、4B、3C、2D、114、设有如下程序段,说法正确的是()int k=10; while(k==0){k=k-1;}A、while循环执行10次B、死循环C、循环一次也不执行D、循环执行一次15、下列叙述中错误的一条是()A 、父类不能替代子类B 、子类能够替代父类 C、子类继承父类 D 、父类包含子类16、设有以下程序:import java.io.*;public class Score{public static void main(String args[]){int a[]=new int [5];for(int i=0;i<a.length;i++){a[i]=(int)(Math.random()*10);}for(int i=0;i<a.length;i++){System.out.print(a[i]+””);}}}下列选项中错误的运行结果是()A、 9 6 0 5 2B、7 9 9 7 2C、1 8 6 9 6D、0 7 9 5 1016、代表对当前对象自身引用的关键字是()。
JAVA复习题库及答案
第一题单项选择题1、在下列说法中,选出最正确的一项是(A )。
A、Java 语言是以类为程序的基本单位的B、Java 语言是不区分大小写的C、多行注释语句必须以//开始D、在Java 语言中,类的源文件名和该类名可以不相同2、下列选项中不属于Java 虚拟机的执行特点的一项是(D )。
A、异常处理B、多线程C、动态链接D、简单易学3、下列选项中,属丁JVM 执行过程中的特点的一项是( C )。
A、编译执行B、多进程C、异常处理D、静态链接4、在Java 语言中,那一个是最基本的元素?( C )A、方法B、包C、对象D、接口5、如果有2 个类A 和B,A 类基于B 类,则下列描述中正确的一个是( B )。
A、这2 个类都是子类或者超类B、A 是B 超类的子类C、B 是A 超类的子类D、这2 个类郡是对方的子类6、使用如下哪个保留字可以使只有在定义该类的包中的其他类才能访问该类?(D )A、abstractB、private (本类)C、protected(本包及其他包的子类)D、不使用保留字7、编译一个定义了3 个类的Java 源文件后,会产生多少个字符码文件,扩展名是什么?(D )A、13 个字节码文件,扩展名是.classB、1 个字节码文件,扩展名是.classC、3 个字节码文件,扩展名是.javaD、3 个字节码文件,扩展名是.class8、下列关于Java 程序结构的描述中,不正确的一项是( C )。
A、一个Java 源文件中可以包括一个package 语句B、一个Java 源文件中可以包括多个类定义,但是只能有一个public 类C、一个Java 源文件中可以有多个public 类D、源文件名与程序类名必须一致9、下列说法正确的一项是( C )。
A、java.1ang.Integer 是接口B、java.1ang.Runnable 是类C、Doulble 对象在iava.1ang 包中D、Double 对象在java.1ang.Object 包中10、以下关于面向对象概念的描述中,不正确的一项是( B )。
JAVA复习题
一、单项选择题(每小题2分,共20分)1. 有关Java语言的说法中,哪种是错误的(B)。
A.java是高级语言B.java是编译型语言C.java是面向对象语言D.java是移植性强的语言2.下面属于Java 关键字的是(C )。
A.INT B.hello C.false D.good3. 在Java程序main方法中,正确的参数是(C)。
A.main(string args[]) B.main(String ()args )C.main(String args[]) D.main(string []args )4. 一个URL地址为::80/local/index.html,则其中的含义为(C)。
A. 通信协议B. 资源C. 地址(机器名称)D. 通信端口5.在Java中,能实现多重继承效果的方式是(C)。
A.内部类B.适配器C.接口D.同步6.下列关于Java Application与Applet的说法中,正确的是(C )。
A.都包含main( )方法B.都通过“appletviewer”命令执行C.都通过“javac”命令编译D.都嵌入在HTML文件中7.关于以下代码所画图形的说明,正确的是(B )。
g.setColor(Color.black);g.drawLine(10,10,10,50);g.setColor(Color.red);g.drawRect(100,100, 50, 50);A.一条40像素长的垂直红线,一个边长为150像素的红色四方形B.一条40像素长的垂直黑线,一个边长为50像素的红色四方形C.一条50像素长的垂直黑线,一个边长为150像素的红色四方形D.一条50像素长的垂直红线,一个边长为50像素的红色四方形8.在Java中,窗口类的包是(B )。
A.java.io.*t B.java.awt.*C.java.applet.*t D..*9.设数组Array由以下语句定义int Array=new int[10],则数组第一个(首个)元素的正确引用方法为(A ) 。
Java复习题目(有答案)
复习题目一.选择题(每小题2分,共30分)1.main()方法是Java Application程序执行的入口点,关于main()方法的方法头下面哪一项是合法的? ( )A.public static void main( )B.public static void main(String args[ ])C.public static int main(Stnng[ ]arg)D.public Void main(Stnng arg[ ])2.以下关于抽象类和接口的说法正确的是()。
A. 抽象类可以用来定义接口B.定义抽象类时需要finalC. 抽象类中的所有方法都是具体的D.抽象类可以是对接口的实现3.下列不属于java.awt包中的基本概念的一项是( )。
A.容器B.构件C.线程D.布局管理器4.下列Swing构件中,属于中间容器的一项是( )。
A.JFrameB.JToolbarC.JLabelD.JButton5.使用JDBC的主要好处是()。
A.它是一个简单易用的数据库管理系统B.允许开发者不用改变程序代码就可以改变底层的数据库C.它是多平台的数据管理系统D.它能为数据库管理系统提供了一个图形用户界面6.SQL语言中的字符串常量使用什么符号括起来()?A.一对双引号("")B.一对单引号('')C.下划线(_)D.百分号(%)7.当程序执行时无法找到数据库驱动类时将产生()异常。
A.NoSuchClassException B.ClassCastException C.ClassNotFoundException D.IllegalClassException8.在使用PreparedStatement时,参数是从()开始计数的。
A.0 B.1 C.2 D.39.当对设有INSERT类型触发的数据表中的一条记录进行修改时,以下说法正确的是()。
A.INSERTED表中有一条记录B.DELETED表中有一条记录C.INSERTED和DELETED表中都有记录D.INSERTED和DELETED表中都没有记录10.paint()方法使用哪种类型的参数?A.Graphics B.Graphics2D C.String D.Color11.定义接口时需要使用关键字是( )。
JAVA复习题
第4-7章面向对象程序设计一、选择题1. 下列不属于面向对象编程的三个特征的是A. 封装B. 指针操作C. 多态性D. 继承2. 在Java接口中,下列选项中有效的方法声明是(AB)。
(选择二项)A、public void aMethod();B、void aMethod();C、protected void aMethod();D、private void aMethod();3. 下列类的定义,错误的是A. public class test extends Object{……}B. final class operators{……}C. class Point{……}D. void class Point{……}4. 关键字supper的作用是A. 用来访问父类被隐藏的成员变量B. 用来调用父类中被重载的方法C. 用来调用父类的构造函数D. 以上都是5. 下面程序定义了一个类,关于该类说法正确的是abstract class abstractClass{……}A. 该类能调用new abstractClass(),方法实例化为一个对象B. 该类不能被继承C. 该类的方法都不能被重载D. 以上说法都不对6. 关于对象的删除,下列说法正确的是A. 必须由程序员完成对象的清除B. java把没有引用的对象作为垃圾收集起来并释放C. 只有当程序中调用()方法时才能进行垃圾收集D. java中的对象都很小,一般不进行删除操作。
7. 下列说法正确的是A. java中包的主要作用是实现跨平台功能B. package语句只能放在import语句后面C. 包(package)由一组类(class)和接口(interface)组成D. 可以用#include关键词来标明来自其它包中的类;8. 关于构造方法,下列说法错误的是A. 构造方法不可以进行方法重写B. 构造方法用来初始化该类的一个新的对象C. 构造方法具有和类名相同的名称D. 构造方法不返回任何数据类型9. 请将程序补充完整class C2.{3. abstract void callme()4. void metoo5. {6. 类C的metoo()方法”);7. }8. }9. class D_extends______C10. {11. void callme()12. {13. 重载C类的callme()方法”);14. }15. }16. public class Abstract17. {18. public static void main(String args[])19. }20. C c=___new_______D();21. ();22. ();23. }24. }10.以下关于抽象类和接口的说法错误的是()A、抽象类在Java语言中表示的是一种继承关系,一个类只能使用一次继承。
Java复习题
一、判断题。
共15题,每题2分,共30分。
正确的请选择A,错误的请选择B。
1、Java语言中,if是一个合法的变量名。
A、正确B、错误解答:正确答案:B,结果:正确2、Java是一种不区分大小写的语言。
A、正确B、错误解答:正确答案:B,结果:正确3、if语句可以没有else子句。
A、正确B、错误解答:正确答案:A,结果:正确4、new运算符用于对象抽象化。
A、正确B、错误解答:正确答案:B,结果:正确5、类是对象实例。
A、正确B、错误解答:正确答案:B,结果:正确6、Java语言规定构造方法不能直接调用。
A、正确B、错误解答:正确答案:A,结果:正确7、程序员可以在指定时间调用垃圾回收器释放内存.A、正确B、错误解答:正确答案:B,结果:正确8、类A和类B位于同一个包中,则除了私有成员,类A可以访问类B的所有其他成A、正确B、错误解答:正确答案:A,结果:正确9、JAVA的标识符不区分大小写。
A、正确B、错误解答:正确答案:B,结果:正确10、表达式!(x==1) 等价于x!=1。
A、正确B、错误解答:正确答案:A,结果:正确11、'\n'不是一个字符常量。
A、正确B、错误解答:正确答案:B,结果:正确12、二维数组的元素可以有不同的类型。
A、正确B、错误解答:正确答案:B,结果:正确13、语句System.out.println("Hello!".length());输出字符串"Hello!"的长度。
A、正确B、错误解答:正确答案:A,结果:正确14、Java应用程序主类的main方法用public声明。
A、正确B、错误解答:正确答案:A,结果:正确二、单选题。
请从给定的选项中选择一个唯一正确的选项。
每小题3分,共10题,31、编译Java Applet 源程序文件产生的字节码文件的扩展名为:A. javaB. classC. htmlD. exe解答:正确答案:B,结果:正确2、已知:int[] a = new int[100];在下列给出的数组元素中,非法的是A. a[0]B. a[1]C. a[99]D. a[100]解答:正确答案:D,结果:正确3、在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或同,传回的值也可以不相同。
Java复习题答案
Java期末考试复习题一、选择题1、下列概念中,不属于面向对象的是?( D )A、对象B、继承C、类D、过程调用2、下列属于合法的Java标识符的是( D )A、“ABC”B、&5678C、++rriwoD、saler3、下列叙述中,正确的是(A )A、声明变量时必须指定一个类型B、Java认为number与Number相同C、Java中唯一的注释方式是“//”D、源文件中public类可以有0个或多个4、下列关于类型转换的说法中,正确的是(B )A、将较长的数据类型转换为较短的数据类型可以用自动类型转换B、将较长的数据类型转换为较短的数据类型只能用强制类型转换C、强制类型转换可以保证数据完整性D、boolean类型只能和int类型进行强制类型转换5、按运算符操作数的数目划分,运算符?:的类型是(A )A、三目B、二目C、一目D、四目6、下列代码中要求打印字符串为”second”时,x的取值范围是(B )if(x>0) {System.out.println(“first”);}else if (x>-3) {System.out.println(“second”);}else {System.out.println(“third”);}A、x>0B、x<=0并且x>-3C、x>-3D、x<=-37、属于main()方法的返回类型是(C )A、publicB、staticC、voidD、main8、Java语言使用的字符码集是( D )A、ASCIIB、BCDC、DCBD、Unicode9、下列关于构造方法的叙述中,错误的是(C )A、Java语言规定构造方法名与类名必须相同B、Java语言规定构造方法没有返回值,但不用void声明C、Java语言规定构造方法不可以重载D、Java语言规定构造方法只能通过new自动调用10、每个Java小程序必须定义为( A )A、Applet 类的子类B、Jframe类的子类C、Frame类的子类D、Window类的子类11、用来导入已定义好的类或包的语句是(B )A、mainB、importC、public classD、class12、已知:int[]a=new int[100];在下列给出的数组元素中,不正确的是(D )A、a[0]B、a[1]C、a[99]D、a[100]13、阅读下列代码public class Test2{public static void main(string arge[]){System.out.printion(7/2);}}其执行结果是。
java复习题
第一章1.下面(A)是JDK的java编译工具。
A.javac B. javadoc C. java D. javaw2.main方法中传递的参数类型是(D)。
A. IntegerB. V ariantC. ShortD. String3.在屏幕上显示消息正确的语句是(A)。
A. System.out.println(“I am a student!”);B. system.out.println(“I am a student!”);C. System.Out.println(“I am a student!”);D. System.out.printline(“I am a student!”);4.Java程序被编译后,将产生(B)。
A.exe代码 B.字节码 C.机器代码 D.都不正确5.Java源程序的扩展名为(B)。
A. .classB. .javaC. .objD. .c6.在一个java文件中定义了3个类,其中属性为public的类最多有(A)个。
A. 3B. 2C. 1D. 07、已知Hello.java文件的内容如下:Public class Hello{Public static void main(String args[]){System.out.println(“Hi,everybody”);}}下列说法正确的是()。
A、在命令提示符,运行命令javac Hello.java,然后运行命令javac Hello,结果显示Hi,everybodyB、在命令提示符,运行命令javac Hello,然后运行命令javac Hello.class,结果显示Hi,everybodyC、在命令提示符,运行命令javac Hello.java,然后运行命令javac Hello.class,结果显示Hi,everybodyD、在命令提示符,运行命令javac Hello,然后运行命令javac Hello.class,结果显示Hi,everybody第二章选择题下面关于if条件语句描述错误的是(A)if语句中只能有一个else子句if语句中可以有多个else if子句if语句中的if体内可以有循环语句if语句可以相互嵌套下面for循环语句的循环次数为(A)for(int i=0 、j=0; i=j=5;i++、j++);A. 0B.1C.5D.无限次3. 下面哪一个不是Java语言的关键字?(D)A.private B.package C.String D.variable4. 下面哪一个不是Java语言中合法的标识符?(C)A.thisPhoto B._Point C.%myColor D.Point45. 下列表达式中,(B)表达式的值为false。
java复习题(有答案)
1、对象“学生”与对象“班级”的关系(1)继承关系(2)包含关系(3)关联关系(4)派生关系2、Sun公司对Java语言的宣传口号为“一次编程,到处执行”,体现了Java 的什么特性(1)编程的简单性(2)与平台无关性(3)Java的面向对象特性(4)Java程序的鲁棒性3、Java语言中的int及char数据类型的长度分别为(1)16位和8 位(2)8位和16位(3)32位和16位(4)32位和8位4、java语言是由那家计算机公司发布的(1)Microsoft 公司(2)IBM 公司(3)NEC 公司(4)Sun 公司5、java语言是在哪一年正式向计算机界发布的(1)1985年(2)1995年(3)1997年(4)1990年6、java语言在语言的类型上应属于那种类型的语言(1)编译型的语言(2)解释型的语言(3)脚本型的解释语言(4)编译链接型的语言7、java语言在编程方法上及语言的语法规则上与下面的哪种编程语言最接近?(1)C 语言(2)C++语言8、java语言的源程序经编译后所生成的程序类型为(1).exe 型的可执行程序(2).obj型二进制的程序(3).lib 型二进制的库程序(4).class 型类代码的程序9、在MicroSoft Windows操作系统应用平台下,下列那种程序是java程序的解释器(1)Windows系统的资源管理器(2)Windows操作系统本身(3)Windows操作系统应用平台下的IE浏览器(4)Windows操作系统应用平台下的记事本notepad程序10、某java程序的类定义如下:public class MyClass extends BaseClass{ }则该java源文件在存盘时的源文件名应为如下那一种(1)myclass.java(2)MyClass.java(3)MYCLASS.java(4)MyClass.java 11、下列那种注释方式在java程序中是错误的(1)/* 注释文字串*/ (2)// 注释文字串(3)/** 注释文字串*/ (4)Rem 注释文字串12、下列那种标识符在java程序中是错误的(1)MyClass_Base12 (2)_MyClass$Base12(3)$MyClass_12 (4)76MyClass$1213、下列那种标识符不能作为java程序中的变量名14、下列那种java语言的数据类型是其基本的数据类型(1)byte 数据类型(2)数组数据类型(3)类的数据类型(4)接口数据类型15、下列那种java语言的数据类型是其复合的数据类型(1)int 数据类型(2)数组数据类型(3)float数据类型(4)char 数据类型16、下列各种符号的定义格式,哪种在java语言中是正确的常量定义(1)const int SUM=1; (2)#define SUM 1(3)final int SUM =1;(4)int SUM=1;17、下列各种符号的定义格式,哪种在java语言中是错误的变量定义(1)int myV al =1; (2)char $myV al =1;(3)byte _myV al =1; (4)float 3.14myV al=1;18、下列各种符号的定义格式,哪种在java语言中是正确的布尔性(boolean)的变量定义(1)boolean myBOOL =1;(2)boolean myBOOL =0;(3)boolean myBOOL =true;(4)boolean myBOOL =null;19、下列各种java中的赋值操作语句,哪种在java语言中是错误的赋值语句(3)int A =1;float B=A; (4)int A=1;long B=A;20、设int X=1,则“X = = 1”表达式之值为(1)1 (2)false (3)true (4)null21、下列各种java中的条件语句,哪种在java语言中是错误的条件格式(1)if (A >= B) (2)if( A = = B)(3)if( A = B)(4)if((A >B) = =true)22、下列各种java中的语句,哪种在java语言中是错误的语句(1)break stop; (2)continue goon;(3)goto goon; (4)if(A >B ){A=1;}23、下列各种java中的函数的定义,哪种在java语言中是正确的(1)void myFun(int X=1){ } (2)void myFun(int & X){}(3)void myFun(int X ){} (4)void myFun(int * X){ }24、下列各种java中的函数在调用时,哪种实现的是传值拷贝调用(1) void myFun( int X){ }(2) void myFun( Frame Obj){ }(3) void myFun(Point P){ } (4) void myFun(Rectangle R){} 25、下列各种java中的函数在调用时,那种实现的是引用数据调用(1) void myFun( char X){} (2) void myFun( byte X){} (3) void myFun( Circle X){} (4) void myFun( float X){} 26、下列各种java的字符串操作,那种是错误的(3)"ABCD".concat("EFGH");(4)String ABCD="EFGH" ; 27、下列各种java中的构造函数定义,那种形式是错误的构造函数定义(1) class MyClass{ public MyClass(){ } }(2) class MyClass{ public MyClass(int X){ } }(3) class MyClass{ public int MyClass(){ } }(4) class MyClass{public MyClass(int x, int y){ } } 28、借助于java的面向对象的编程特性中的封装机制,可以实现对问题进行如下什么方式的处理(1)将问题的特征属性与问题的功能方法相组合在一起形成一个类。
java复习题-及答案
一、判断题:1.Java程序里,创建新的类对象用关键字new,回收无用的类对象使用关键字free。
(×)2.对象可以赋值,只要使用赋值号(等号)即可,相当于生成了一个各属性与赋值对象相同的新对象。
(×)3.有的类定义时可以不定义构造函数,所以构造函数不是必需的。
(×)4.类及其属性、方法可以同时有一个以上的修饰符来修饰。
(√)5.Java的屏幕坐标是以像素为单位,容器的左下角被确定为坐标的起点(×)6.抽象方法必须在抽象类中,所以抽象类中的方法都必须是抽象方法。
(×)7.Final类中的属性和方法都必须被final修饰符修饰。
(×)8.最终类不能派生子类,最终方法不能被覆盖。
(√)9.子类要调用父类的方法,必须使用super关键字。
(×)10.一个Java类可以有多个父类。
(×)11、J ava中,如果类C是类B的子类,类B是类A的子类,则C不仅继承了B中的成员,同样也继承了A中的成员。
(√)12、文本区和文本框都能引发两类事件:文本改变事件和动作事件。
(√)13、抽象方法必须在抽象类中,所以抽象类中的方法都必须是抽象方法。
(×)14、程序中一旦执行了catch语句块,则不会执行finally语句块。
(×)15、接口ng.runnable中只有一个run()方法。
(√)二、选择题:1、关于被私有保护访问控制符private protected修饰的成员变量,以下说法正确的是(不知道,感觉题目有问题)A.可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类B.可以被两种类访问和引用:该类本身、该类的所有子类C.只能被该类自身所访问和修改D.只能被同一个包中的类访问2、关于被私有访问控制符private修饰的成员变量,以下说法正确的是( C )A.可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类B.可以被两种类访问和引用:该类本身、该类的所有子类C.只能被该类自身所访问和修改D.只能被同一个包中的类访问3、关于被保护访问控制符protected修饰的成员变量,以下说法正确的是( B )A.可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类B.可以被两种类访问和引用:该类本身、该类的所有子类C.只能被该类自身所访问和修改D.只能被同一个包中的类访问4、下列关于修饰符混用的说法,错误的是( D )A.a bstract不能与final并列修饰同一个类B.a bstract类中不可以有private的成员C.a bstract方法必须在abstract类中D.s taic方法中能处理非static的属性5、容器Panel和Applet缺省使用的布局编辑策略是( B )A、BorderLayoutB、FlowLayoutC、GridLayoutD、CardLayout6、以下标识符中哪项是不合法的( C )A、B igMeaninglessNameB、$intC、1 stD、$17、main方法是Java Application程序执行的入口点,关于main方法的方法头以下哪项是合法的( B )A、p ublic static void main()B、public static void main (String[ ] args)C、public static int main(String[ ] arg)D、public void main(String arg[ ])8、执行完以下代码int [ ] x = new int[25];后,以下哪项说明是正确的( A )A、x[24]为0B、x[24]未定义C、x[25]为0D、x[0]为空9、以下代码段执行后的输出结果为(B )int x=3;int y=10;System.out.println(y%x);A、0B、1C、2D、310、以下哪个表达式是不合法的( B )A、String x=”Hello”; int y=9; x+=y;B、String x=”Hello”; int y=9; if(x= =y) { }C、String x=”Hello”; int y=9; x=x+y;D、String x=null; int y=(x!=null)&&(x.length()>0) ? x.length : 011、在JA V A的异常处理模型中,能单独和finally语句一起使用的块是(A )。
java复习题(选择与填空)答案
java复习题(选择与填空)答案一、选择题1. Java是一种:A. 编译型语言B. 解释型语言C. 标记语言D. 汇编语言答案:B2. Java语言的跨平台特性是基于:A. JVMB. 编译器C. 操作系统D. 硬件答案:A3. 在Java中,以下哪个关键字用于定义一个类?A. ifB. classC. forD. while答案:B4. Java中的基本数据类型不包括:A. intB. floatC. doubleD. String答案:D5. 下列哪个是Java的合法标识符?A. 2variableB. variable2C. variable!D. variable$$答案:B6. 在Java中,哪个关键字用于抛出异常?A. tryB. catchB. throwD. finally答案:C7. Java中,哪个类是所有Java类的父类?A. ObjectB. SystemC. ThreadD. String答案:A8. 下列哪个是Java集合框架中接口?A. ArrayListB. ListC. HashMapD. Set答案:B9. Java中,哪个关键字用于实现多态?A. abstractB. interfaceC. extendsD. implements答案:C10. Java中,哪个关键字用于定义一个方法?A. classB. voidC. methodD. function答案:B二、填空题1. 在Java中,所有的类都是继承自________类。
答案:Object2. Java的垃圾回收机制会自动回收________的对象。
答案:不再被引用3. Java中的封装性是通过________实现的。
答案:访问修饰符(private, public等)4. Java中的多线程可以通过继承________类或实现________接口来实现。
答案:Thread;Runnable5. 在Java中,final关键字可以用于修饰类、方法和变量,表示它们是________的。
Java复习题包括部分经典面试题
Java复习题包括部分经典面试题Java复习题一、单选题1.下列语句哪一个正确()A. Java程序经编译后会产生machine codeB.Java程序经编译后会产生byte codeC. Java程序经编译后会产生DLLD.以上都不正确2.下列说法正确的有()A. class中的constructor不可省略B.constructor必须与class同名,但方法不能与class同名C. constructor在一个对象被new时执行D.一个class只能定义一个constructor3.下列运算符合法的是()A.&& B.<> C.if D.:=4.执行如下程序代码a=0;c=0;do{--c;a=a-1;}while(a>0);后,C的值是()A.0 B.1 C.-1 D.死循环5.下列哪一种叙述是正确的()A. abstract修饰符可修饰字段、方法和类B.抽象方法的body部分必须用一对大括号{ }包住C.声明抽象方法,大括号可有可无D.声明抽象方法不可写出大括号6.下列语句正确的是()A.形式参数可被视为local variableB.形式参数可被字段修饰符修饰---------字段修饰符有new,private,protected,public,internal,static和readonly几种.同常量成员一样,private,protected,public和internalC.形式参数为方法被调用时,真正被传递的参数D.形式参数不可以是对象7.下列哪种说法是正确的()A.实例方法可直接调用超类的实例方法B.实例方法可直接调用超类的类方法C.实例方法可直接调用其他类的实例方法D.实例方法可直接调用本类的类方法8. public class foo {public static void main(String [] args){String s;System.out.println("s="+s);}}输出结果是:_______A.输出s=B.输出s=nullC.代码编译不能通过D. 代码编译通过,但运行时抛出NullPointException9. 有如下java代码:class super{public float getNum(){return 3.0f;}}public class sub extends super{_______}横线处填入下面那一条语句不会报错______A.public float getNum(){return 4.0f;}B. public void getNum(){}C. public void getNum(double d) {}D. public double getNum(float d) { return 4.0f;}10. Public class Test2 {Static boolean foo(char c) {System.out.print(c);Return true;}Public static void main(String[] argv) {int i = 0;//for(65;88&&(i<2);67)for (foo('A'); foo('B') && (i < 2); foo('C')) { i++;foo('D');}}}输出结果是()A. ABDCBDCBB. ABCDABCDC. Compilation fails.D. An exception is thrown at runtime.11.类Example A继承Exception,类ExampleB继承Example A;有如下代码片断:(Core Java)try{throw new ExampleB(“b”);}catch(ExampleA e){System.out.println(“ExampleA”);}catch(Exception e){System.out.printfln(“Exception”);}输出的内容应该是:()A:ExampleA B:Exception C:b D:无二、多项选择题1.下列说法正确的有()A.环境变量可在编译source code时指定B.在编译程序时,所能指定的环境变量不包括class path C. javac一次可同时编译数个Java源文件D. javac.exe能指定编译结果要置于哪个目录(directory)2.下列标识符不合法的有()A.new B.$Usdollars C.1234 D.car.taxi3.下列说法错误的有()A.数组是一种对象B.数组属于一种原生类C. int number=[]={31,23,33,43,35,63}D.数组的大小可以任意改变4.不能用来修饰interface的有()A.private B.public C.protected D.static5.下列说法错误的有()A.在类方法中可用this来调用本类的类方法B.在类方法中调用本类的类方法时可直接调用C.在类方法中只能调用本类中的类方法D.在类方法中绝对不能调用实例方法6.下列说法错误的有()A. Java面向对象语言容许单独的过程与函数存在B. Java面向对象语言容许单独的方法存在C. Java语言中的方法属于类中的成员(member)D.Java语言中的方法必定隶属于某一类(对象),调用方法与过程或函数相同7.下列说法错误的有()A.能被java.exe成功运行的java class文件必须有main()方法B. J2SDK就是Java APIC. Appletviewer.exe可利用jar选项运行.jar文件D.能被Appletviewer成功运行的java class文件必须有main()方法8.请阅读如下语句,在选项中找出结果为true的语句()String sTemp1 = “ABC”;String sTemp2 = new String(“ABC”);String sTemp3 = sTemp1;a).sTemp1.equals(sTemp2);b).sTemp1 == sTemp2;c).sTemp2 == sTemp3;d).sTemp2.equals(sTemp3);e).sTemp1.equals(sTemp3);9. 请从如下语句中选出不正确的声明方式()a).int[] i = new int[2] { 5, 10};b).int i[5] = { 1, 2, 3, 4, 5};c).int[] i[] = {{}, new int[] {} };d).int i[][] = { {1,2}, new int[2] };e).int i[] = { 1, 2, 3, 4, };10.public class OuterClass {private double d1 = 1.0;//insert code here}You need to insert an inner class declaration at line 3. Which two inner class declarati ons are valid?( )A. class InnerOne{ public static double methoda() {return d1;} }B. public class InnerOne{static double methoda() {return d1;} }C. private class InnerOne{double methoda() {return d1;} }D. static class InnerOne{ protected double methoda() {return d1;} }E. abstract class InnerOne{ public abstract double methoda(); }三、判断题1.Java程序中的起始类名称必须与存放该类的文件名相同。
(完整版)JAVA复习题(有答案)
复习题一、选择题1、以下 Java 标记符中合法的是:()A H3_sumB -nameC student#D 9_Hello1232.Java 源文件和编译后的文件扩展名分别为()A. .class 和 .javaB. .java 和 .classC. .class 和 .classD. .java 和 .java 3.对于同一信息,对象能够产生不一样的行为,这称为类的什么特征?()A )继承性B)封装性C)多态性D)抽象性4、用来引入包语句的重点词是:()A) import B) abstract C) package D) extends5.对于小程序,当走开包括Applet 的主页后又再返回时将调用()方法。
A ) start( )B ) init( )C) destroy( ) D )stop( )6.以下对 Java 中的继承描绘错误的说法是()A.子类只好有一个父类B.子类可作为另一个子类的父类C.子类能够接见父类的私有属性D.子类继承父类的方法接见权限保持不变7.哪一种循环在条件表达式被计算以前起码履行循环体语句一次?()A )do-while 循环B ) for 循环C) while 循环 D )以上都不是8.定义数组String[] a={"ab","abc","abcd","abcde"},数组中a[1]指的是()。
B .abc D. 数组越界9.假如希望组件从左往右,从上到下自动布局界面,应使用哪一种布局?()A )没有B) BorderLayout C) FlowLayout D) GridLayout10.以下说法正确的选项是()A. 最后类在特别状况下能够有子类B. 抽象类只好有一个子类C.多态能够经过方法重写和方法重载实现D.抽象类不能够申明成员变量和成员方法,只好申明抽象方法11.以下语句中接见类的方法正确的选项是:()A )B) ( ) C) book->name D ) book_name 12.以下选项中哪个是类Pen 的结构方法()A )public void Pen() {}B ) public static Pen() {}C) public Pen() {}D) public static void Pen() {}13.单击菜单触发的事件是?()A. ActionEvent C.MouseEvent D.KeyEvent14.对于 try/catch/finally结构的异样捕捉和办理,说法错误的选项是()A ) try 部分是一定的B) catch 部分也是一定的C)能够有多个catch 部分D) finally 部分也是一定的15、下边对于JDBC 描绘错误的是 ()。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、填空题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.一个数字如果恰好等于它的因子之和,这个数就称为“完数”。