1、Java 一章 至 五章 考试一.填空题(8 分)1. 面向对象的三大原则是( 封装 ),( 继承 )和( 多态 ).2 分2. 如果想在对象实例化的同时就初始化成员属性,则使用( 构造函数 ).2 分3. ( 实体)方法和( 构造 )方法不能修饰为 abstract?分二选择题(60 分)1) 在 Java 语言中,下列(a,d)是不满足命名规范的变量名。 (选择二项)a) 姓名b) $Namec) _instanceofd) instanceof2) 下列 Java 代码片段的输出结果是( a ) 。char c=a;int i=c;float f=i;byte b=(byte)c;Sys
2、tem.out.println(c+“,“+i+“,“+f+“,“+b);a) 编译错误b) a,97,97,97c) a,97,97.0,97d) a,97,97.0f,973) 下列 Java 代码中,空白处的代码是(b,c ) 。(选择两项)public interface Feepublic float calLabFee(float unitPrice, float time);public class FeeImpl implements Fee public float calLabFee(float unitPrice, float time)return unitPrice
3、* time;public class FeeInterfaceTest public static void main(String args)_Float labFee = fee.calLabFee(400.00,5);a) Fee fee = new Fee ();b) Fee fee = new FeeImpl();c) FeeImpl fee = new FeeImpl();d) FeeImpl fee = new Fee ();4) 在 JAVA 语言中,在包 Package1 中包含包 Package2,类 Class_A 直接隶属于包 Package1,类 Class_C 直
4、接隶属于包 package2.在类 Class_B 要应用Class_A 的 A 和 Class_C 的方法 B ,你需要( a, b)语句。 (选择两项)a) import package1.*;b) import package1.package2.*;c) import package2.*;d) import package2.package1.*;5) int my_Array;my_Array=new int5;for(int count=0;count=0;j-)if(i= =j)continue;system.out.printin(“i=”+i+“j=” +j);(a,d,b
5、) (选择三项)a) i =0 j=3b) i =0 j=0c) i =2 j=2d) i =0 j=2e) i =1 j=215) ( d )修饰符允许对类成员的访问不依赖于该类的任何对象a) abstractb) staticc) returnd) public16) 研究下面的 Java 代码:public class testExceptionpublic static void main(String args)int a=0,1,2,3,4;int sum=0;tryfor(int i=1;i6;i+)sum=sum+ai;System.out.println(“sum=“+sum
6、);catch(ArrayIndexOutOfBoundsException e)System.out.println(“数组越界“);finally System.out.println(“程序结束“);输出结果将是( b )。 (选择一项)a) 10 数组越界 程序结束b) 10 程序结束c) 数组越界 程序结束d) 程序结束17) 给定如下 java 代码:public class Test public static void main(String args)int output=10;boolean b1=false;if(b1=true)elseSystem.out.printl
7、n(“Not equal”+output);( c )a) Equal 10b) Equal 20c) Not equal 10d) Not equal 2018) 给定如下 java 代码,编译运行后将会输出( c ) (选择一项)public class Testpublic static void main(String args)int a = 5;System.out.println(a%2=1)?(a+1)/2:a/2);a) 1b) 2c) 3d) 419) public class Test extends Parentpublic int count()return 1%9;
8、public static void main(String args)System.out.println(count();编译运行结果是( c )( 选择一项)a) 编译错误b) 运行时出现例外c) 正常运行,输出d) 正常运行,输出20) 已知 A 类被打包在 packageA , B 类被打包在 packageB ,且 B 类被声明为public ,且有一个成员变量 x 被声明为 protected 控制方式 。C 类也位于packageA 包,且继承了 B 类 。则以下说话正确的是(c ) (选择一项)a) A 类的实例不能访问到 B 类的实例b) A 类的实例能够访问到 B 类一个
9、实例的 x 成员c) C 类的实例可以访问到 B 类一个实例的 x 成员d) C 类的实例不能访问到 B 类的实例三问答题(22 分)1.方法重载要符合什么条件?4 分1,方法名相同2,参数类型不同(参数个数不同,或者参数类型不同,或者类型和参数都不同)3,与返回类型无关2.修饰成员变量的四种访问权限是哪些,分别在哪些地方可以访问?分1, public, 所 有 都 可 访 问2, protected, 子 类 和 同 包 可 访 问3, private, 本 类 可 访 问4, 默 认 , 同 包 可 访 问3.super 关键字的作用?它什么时候用?分1, 放 在 子 类 构 造 函 数
10、的 第 一 行 , 显 示 调 用 父 类 的 构 造 函 数2, super.方 法 名 , 调 用 父 类 的 方 法3, super.属 性 名 , 调 用 父 类 的 成 员 属 性4.方法重写要符合什么条件?和方法重载有什么区别?5 分1, 有 继 承2, 方 法 名 , 参 数 , 返 回 类 型 都 相 同与 重 载 的 区 别 :重 载 是 参 数 不 同 , 与 返 回 类 型 无 关4. 多态分哪两种?前提条件分别是什么?3 分1, 运 行 时 多 态 , 前 提 是 有 继 承 , 子 类 重 写 父 类 的 方 法 , 并 且 父 类 的 引 用 指 向 子 类 的 应
11、 用2, 编 译 时 多 态 ,6 final 有哪些作用?分别有哪些注意事项?3 分1, 类不能被继承,方法不能被重写2, 方法中不能用 this 关键字四附加题:(10)抽象类、继承、接口综合设计一个系统:XXX 门的实现过程:流程:设计一张抽象的门 Door,那么对于这张门来说,就应该拥有所有门的共性,开门openDoor()和关门 closeDoor();然后对门进行另外的功能设计,防盗-theftproof()、防水-waterproof()、防弹-bulletproof()、防火、防锈要求:利用继承、抽象类、接口的知识设计该门public interface FunctionPub
12、lic void theftproof();public void waterproof();public void bulletproof();public void fireproof();public void rustproof();public abatract Doorpublic void openDoor();public void closeDoor();public class theftProofDoor extends Door,implements Function public void openDoor()System.out.println(“开门。 。 。 。
13、 ”)public void closeDoor()System.out.println(“关门。 。 。 。 ”)public void theftproof()System.out.println(“这是防盗门。 。 。 。 ”)public void bulletproof()public void waterproof()public void fireproof()public void rustproof()public class waterProofDoor extends Door, implements Function public void openDoor()Syst
14、em.out.println(“开门。 。 。 。 ”)public void closeDoor()System.out.println(“关门。 。 。 。 ”)public void theftproof()public void bulletproof()public void fireproof()public void rustproof()public void waterproof()System.out.println(“这是防水门。 。 。 。 ”)public class bulletProofDoor extends Door,implements Function p
15、ublic void openDoor()System.out.println(“开门。 。 。 。 ”)public void closeDoor()System.out.println(“关门。 。 。 。 ”)public void theftproof()public void waterproof()public void fireproof()public void rustproof()Public void bulletproof()System.out.println(“这是防弹门。 。 。 。 ”)public class fireProofDoor extends Doo
16、r,implements Function public void openDoor()System.out.println(“开门。 。 。 。 ”)public void closeDoor()System.out.println(“关门。 。 。 。 ”)public void theftproof()public void waterproof()public void fireproof()System.out.println(“这是防火门。 。 。 。 ”)public void rustproof()Public void bulletproof()public class rustProofDoor extends Door,implements Function public void openDoor()System.out.println(“开门。 。 。 。 ”)public void closeDoor()System.out.println(“关门。 。 。 。 ”)public void theftproof()