java复习题库第五、六章
《Java语言程序设计:基础篇》课后复习题答案-第五章

Chapter5Methods1.At least three benefits:(1)Reuse code;(2)Reduce complexity;(3)Easy to maintain.See the Sections5.2and5.3on how to declare and invoke methods.What is thesubtle difference between“defining a method”and“declaring a variable”?A declaration usually involvesallocating memory to store a variable,but a definitiondoesn’t.2.void3.Yes.return(num1>num2)?num1:num2;4.True:a call to a method with a void return type is always a statement itself.False:a call to a value-returning method is always a component of an expression.5.A syntax error occurs if a return statement is not used to return a value in a value-returning method.You can have a return statement in a void method,whichsimply exits the method.But a return statement cannot return a value such asreturn x+y in a void method.6.See Section5.2.puting a sales commission given the sales amount and the commission ratepublic static double getCommission(double salesAmount,doublecommissionRate)Printing a calendar for a monthpublic static void printCalendar(int month,int year)Computing a square rootpublic static double sqrt(double value)Testing whether a number is even and return true if it ispublic static boolean isEven(int value)Printing a message for a specified number of timespublic static void printMessage(String message,int times)Computing the monthly payment,given the loan amount,number of years,and annual interest rate.public static double monthlyPayment(double loan,intnumberOfYears,double annualInterestRate)Finding the corresponding uppercase letter given a lowercase letter.public static char getUpperCase(char letter)8.Line2:method1is not defined correctly.It does not have a return type or void.Line2:type int should be declared for parameter m.Line7:parameter type for n should be double to match method2(3.4).Line11:if(n<0)should be removed in method,otherwise a compile error is reported.9.public class Test{public static double xMethod(double i,double j){ while(i<j){j--;}return j;}}10.You pass actual parameters by passing the right type of value in the right order.The actual parameter can have the same name as its formal parameter.11."Pass by value"is to pass a copy of the value to the method.(A)The output of the program is0,because the variable max is not changed byinvoking the method max.(B)224248248162481632248163264(C)Before the call,variable times is3n=3Welcome to Java!n=2Welcome to Java!n=1Welcome to Java!After the call,variable times is3(D)12121421i is 512.Just before max is invoked.Space required for the main methodmax: 0Just entering max.Space required for the max methodmax: 0value2: 2 value1: 1Just before max is returnedSpace required for the main methodmax: 0Space required for the max methodmax: 2value2: 2 value1: 1 Space required for the main methodmax: 0Space required for the main methodmax: 0Right after max is returned13.Two methods with the same name,defined in the same class,is called method overloading.It is fine to have same method name,but different parameter types.You cannot overload methods based on return type,or modifiers.14.Methods public static void method(int x)and public static int method(int y)have the same signature method(int).15.Line 7:int n =1is wrong since n is already declared in the method signature.16.True17.(a)34+(int)(Math.random()*(55–34))(b)(int)(Math.random()*1000)(c)5.5+(Math.random()*(55.5–5.5))(d)(char)(‘a’+(Math.random()*(‘z’–‘a’+1))18.Math.sqrt(4)= 2.0Math.sin(2*Math.PI)=0Math.cos(2*Math.PI)=1Math.pow(2,2)= 4.0Math.log(Math.E)=1Math.exp(1)= 2.718Math.max(2,Math.min(3,4))=3 Math.rint(-2.5)=-2.0Math.ceil(-2.5)=-2.0Math.floor(-2.5)=-3.0Math.round(-2.5f)=-2Math.round(-2.5)=-2Math.rint(2.5)= 2.0Math.ceil(2.5)= 3.0Math.floor(2.5)= 2.0Math.round(2.5f)=3Math.round(-2.5)=-2Math.round(Math.abs(-2.5))=3。
java考试题库第六章.docx

第六章异常和异常处理一选择题6・1 .下列关于异常的描述中,错误的是(B)A.异常是一种经过修正后程序仍可执行的错误B.异常是一种程序在运行中出现的不可恢复执行的错误C.不仅Java语言有异常处理,C++语言也有异常处理D.岀现异常不是简单结束程序,而是执行某种处理异常的代码,设法恢复程序的执行6・2.下列关于异常处理的描述中,错误的是(D)A.程序运行时异常由Java虚拟机自动进行处理B.使用try-catch-finally语句捕获异常C.使用throw语句抛出异常D.捕获到的异常只能用当前方法中处理,不能用其他方法中处理6・3.下列关于try-catch-finally语句的描述中,错误的是(A)A・try语句后面的程序段将给出处理异常的语句B・catch ()方法跟在try语句后面,它可以是一个或多个C. catch ()方法有一个参数,该参数是某种异常类的对彖D・finally语句后面的程序段总是被执行的,该语句起到提供统一接口的作用6・4.下列关于抛出异常的描述中,错误的是(D)A.捕捉到发牛的异常可在当前方法中处理,也可以抛到调用该方法的方法中处理B.在说明要抛出异常的方法吋应加关键字throw<异常列表〉C.v异常列表〉中可以有多个用逗号分隔的异常D.抛岀异常的方法中要使用下述抛出异常语句:throw<异常名〉;其中,v异常名>是异常类的类名6・5.下列关于用户创建自己的异常描述中,错误的是(D)A.创建自己的异常应先创建一个异常类B.为实现抛出异常,须在可能抛出异常的方法中书写throw语句C.捕捉异常的方法是使用try-catch-finally语句格式D.使用异常处理不会使整个系统更加安全和稳定二判断题6・1 .异常是一种特殊的运行错误的对象。
(对)62异常处理可以使整个系统更加安全和稳定。
(对)6・3.异常处理是在编译时进行的。
(错)6-4.Java语言中异常类都是ng.Throwable的子类。
java练习题一到四章

第一章:Java基础1.1 Java语言概述1.1.1 Java语言的起源1.1.2 Java语言的特点1.1.3 Java语言的运行环境1.1.4 Java语言的开发工具1.2 Java语法基础1.2.1 数据类型1.2.2 变量和常量1.2.3 运算符1.2.4 控制语句1.3 面向对象编程1.3.1 类和对象1.3.2 构造方法1.3.3 继承1.3.4 多态1.3.5 封装1.4 异常处理1.4.1 异常的概念1.4.2 异常的捕获与处理1.4.3 自定义异常1.5 Java集合框架1.5.1 List接口1.5.2 Set接口1.5.3 Map接口1.5.4 Collection类1.5.5 Iterator接口1.5.6 Collection框架的常用类第二章:Java进阶2.1 Java多线程2.1.1 线程的概念2.1.2 线程的创建与运行2.1.3 线程同步2.1.4 线程通信2.2 Java网络编程2.2.1 URL类2.2.2 Socket编程2.2.3 HTTP协议2.3 Java数据库编程2.3.1 JDBC概述2.3.2 JDBC连接数据库2.3.3 JDBC查询与更新2.3.4 JDBC事务管理2.4 Java设计模式2.4.1 单例模式2.4.2 工厂模式2.4.3 代理模式2.4.4 装饰者模式2.4.5 策略模式第三章:Java框架3.1 Spring框架3.1.1 Spring框架概述3.1.2 依赖注入3.1.3 AOP3.1.4 Spring MVC3.2 MyBatis框架3.2.1 MyBatis概述3.2.2 MyBatis配置3.2.3 MyBatis映射文件3.2.4 MyBatis动态SQL3.3 Spring Boot框架3.3.1 Spring Boot概述3.3.2 Spring Boot配置3.3.3 Spring Boot自动配置3.3.4 Spring Boot集成3.4 Spring Cloud框架3.4.1 Spring Cloud概述3.4.2 Spring Cloud配置3.4.3 Spring Cloud服务治理3.4.4 Spring Cloud分布式事务第四章:Java项目实战4.1 Java项目开发流程4.1.1 需求分析4.1.2 系统设计4.1.3 编码实现4.1.4 测试与部署4.2 Java项目案例4.2.1 基于Spring Boot的博客系统4.2.2 基于Spring Cloud的电商平台4.2.3 基于Java的在线教育平台4.2.4 基于Java的社交网络平台第五章:Java高级特性5.1 Lambda表达式5.1.1 Lambda表达式的基本语法5.1.2 Lambda表达式的应用场景5.1.3 Stream API5.2 Java NIO5.2.1 NIO概述5.2.2 文件IO操作5.2.3 缓冲区5.2.4 非阻塞IO5.3 Java内存模型5.3.1 内存区域5.3.2 垃圾回收5.3.3 内存泄漏5.4 Java并发编程5.4.1 线程池5.4.2 锁5.4.3 同步与并发工具类5.4.4 并发编程的艺术第六章:Java Web开发6.1 HTML与CSS6.1.1 HTML基本语法6.1.2 CSS样式表6.1.3 HTML5与CSS3新特性6.2 JavaScript基础6.2.1 JavaScript语法6.2.2 常用内置对象6.2.3 事件处理6.3 Java Web技术6.3.1 Servlet6.3.2 JSP6.3.3 EL表达式6.3.4 JSTL6.3.5 Filter和Listener 6.4 前端框架6.4.1 React6.4.2 Angular6.4.3 Vue.js第七章:Java安全与性能优化7.1 Java安全机制7.1.1 权限控制7.1.2 加密技术7.1.3 安全框架7.2 Java性能优化7.2.1 常见性能问题7.2.2 JVM调优7.2.3 代码优化7.2.4 数据库优化7.3 Java监控与日志7.3.1 监控工具7.3.2 日志框架7.3.3 日志管理第八章:Java项目实战案例8.1 企业级项目架构设计8.1.1 架构模式8.1.2 微服务架构8.1.3 分布式架构8.2 实战案例一:在线购物平台8.2.1 需求分析8.2.2 系统设计8.2.3 技术选型8.2.4 项目实施8.3 实战案例二:企业资源规划(ERP)系统8.3.1 需求分析8.3.2 系统设计8.3.3 技术选型8.3.4 项目实施8.4 实战案例三:银行系统8.4.1 需求分析8.4.2 系统设计8.4.3 技术选型8.4.4 项目实施第九章:Java EE技术9.1 Java EE概述9.2 Java EE核心技术9.2.1 EJB9.2.2 JPA9.2.3 JSF9.2.4 JMS9.2.5 Java EE安全性9.3 Java EE项目案例9.3.1 企业信息管理系统9.3.2 电子商务平台9.3.3 人力资源管理系统第十章:Java开发工具与环境10.1 Java开发工具10.1.1 IntelliJ IDEA 10.1.2 Eclipse10.1.3 NetBeans10.2 构建工具10.2.1 Maven10.2.2 Gradle10.3 版本控制10.3.1 Git10.3.2 SVN10.4 调试工具10.4.1 JDBCTrace10.4.2 JProfiler10.4.3 VisualVM第十一章:Java面试题11.1 Java基础面试题11.1.1 Java内存模型11.1.2 Java集合框架11.1.3 Java多线程11.1.4 Java异常处理11.2 Java Web面试题11.2.1 Servlet生命周期11.2.2 JSP原理11.2.3 JavaScript面试题11.3 数据库面试题11.3.1 JDBC11.3.2 MySQL11.3.3 Oracle11.4 Java框架面试题11.4.1 Spring框架11.4.2 MyBatis框架11.4.3 Spring Boot框架第十二章:Java技术前沿12.1 Java 9新特性12.1.1 模块化系统12.1.2 流式API12.1.3 JShell12.2 Java 10新特性12.2.1 LocalVariable Type Inference12.2.2 ZGC12.2.3 HTTP/212.3 Java 11新特性12.3.1 JEP 321: Dynamic ClassFile Constants 12.3.2 JEP 322: ForeignMemory Access API 12.3.3 JEP 323: HTTP/2 Client12.4 Java未来发展趋势12.4.1 云计算12.4.2 微服务12.4.3 容器化技术第十三章:Java性能调优13.1 JVM性能调优13.1.1 JVM参数优化13.1.2 垃圾收集器选择13.1.3 内存泄漏检测13.2 代码性能调优13.2.1 数据结构选择13.2.2 算法优化13.2.3 循环优化13.3 网络性能调优13.3.1 网络延迟优化13.3.2 网络吞吐量优化13.3.3 网络安全优化第十四章:Java安全编程14.1 Java安全机制14.1.1 访问控制14.1.2 权限管理14.1.3 安全认证14.2 加密技术14.2.1 对称加密14.2.2 非对称加密14.2.3 哈希算法14.3 安全框架14.3.1 Spring Security14.3.2 Apache Shiro14.3.3 Java Cryptography Architecture (JCA)第十五章:Java并发编程高级15.1 并发工具类15.1.1 CountDownLatch15.1.2 CyclicBarrier15.1.3 Semaphore15.1.4 Exchanger15.2 并发编程模型15.2.1 生产者消费者模型15.2.2 管道模型15.2.3 线程池模型15.3 并发编程的艺术15.3.1 锁的优化15.3.2 死锁的避免15.3.3 线程安全的集合第十六章:Java分布式系统16.1 分布式系统概述16.1.1 分布式计算16.1.2 分布式存储16.1.3 分布式事务16.2 分布式技术16.2.1 ZooKeeper16.2.2 Kafka16.2.3 Redis16.2.4 Dubbo16.3 分布式系统设计16.3.1 负载均衡16.3.2 服务发现16.3.3 数据同步第十七章:Java大数据技术17.1 Hadoop生态圈17.1.1 Hadoop概述17.1.2 HDFS17.1.3 MapReduce17.1.4 YARN17.2 Spark17.2.1 Spark概述17.2.2 Spark Core17.2.3 Spark SQL17.2.4 Spark Streaming 17.3 Flink17.3.1 Flink概述17.3.2 Flink流处理17.3.3 Flink批处理18.1 机器学习基础18.1.1 线性回归18.1.2 逻辑回归18.1.3 决策树18.1.4 支持向量机18.2 深度学习18.2.1 神经网络18.2.2 卷积神经网络18.2.3 循环神经网络18.3 Java深度学习框架18.3.1 Deeplearning4j 18.3.2 TensorFlow 18.3.3 PyTorch答案第一章:Java基础1.1 Java语言概述Java语言的起源Java语言的特点Java语言的运行环境 Java语言的开发工具1.2 Java语法基础数据类型变量和常量运算符控制语句1.3 面向对象编程类和对象构造方法继承多态封装1.4 异常处理异常的概念异常的捕获与处理自定义异常1.5 Java集合框架List接口Set接口Map接口Collection类Iterator接口Collection框架的常用类第二章:Java进阶2.1 Java多线程线程的概念线程的创建与运行线程同步线程通信2.2 Java网络编程URL类Socket编程HTTP协议2.3 Java数据库编程 JDBC概述JDBC连接数据库JDBC查询与更新JDBC事务管理2.4 Java设计模式单例模式工厂模式代理模式装饰者模式策略模式第三章:Java框架3.1 Spring框架Spring框架概述依赖注入AOPSpring MVC3.2 MyBatis框架MyBatis概述MyBatis配置MyBatis映射文件MyBatis动态SQL3.3 Spring Boot框架Spring Boot概述Spring Boot配置Spring Boot自动配置Spring Boot集成3.4 Spring Cloud框架Spring Cloud概述Spring Cloud配置Spring Cloud服务治理Spring Cloud分布式事务第四章:Java项目实战4.1 Java项目开发流程需求分析系统设计编码实现测试与部署4.2 Java项目案例基于Spring Boot的博客系统基于Spring Cloud的电商平台基于Java的在线教育平台基于Java的社交网络平台第五章:Java高级特性5.1 Lambda表达式Lambda表达式的基本语法Lambda表达式的应用场景Stream API5.2 Java NIONIO概述文件IO操作缓冲区非阻塞IO5.3 Java内存模型内存区域垃圾回收内存泄漏5.4 Java并发编程线程池锁同步与并发工具类并发编程的艺术第六章:Java Web开发6.1 HTML与CSSHTML基本语法CSS样式表HTML5与CSS3新特性6.2 JavaScript基础 JavaScript语法常用内置对象事件处理6.3 Java Web技术ServletJSPEL表达式JSTLFilter和Listener6.4 前端框架ReactAngularVue.js第七章:Java安全与性能优化7.1 Java安全机制权限控制加密技术安全框架7.2 Java性能优化常见性能问题JVM调优代码优化数据库优化7.3 Java监控与日志监控工具日志框架日志管理第八章:Java项目实战案例8.1 企业级项目架构设计架构模式微服务架构分布式架构8.2 实战案例一:在线购物平台需求分析系统设计技术选型项目实施8.3 实战案例二:企业资源规划(ERP)系统需求分析系统设计技术选型项目实施8.4 实战案例三:银行系统需求分析系统设计技术选型项目实施第九章:Java EE技术9.1 Java EE概述Java EE核心技术EJBJPAJSFJMSJava EE安全性9.2 Java EE项目案例企业信息管理系统电子商务平台人力资源管理系统第十章:Java开发工具与环境10.1 Java开发工具。
java考试题库第五章

选择题5-1下列关于容器的描述中,错误的是DA.容器是由若干个组建和容器组成的B.容器是对图形界面中界面元素的一种管理C.容器是一种对指定宽和高的矩形范围D.容器都是可以独立的窗口5-2下列界面元素中,不是容器的是AA.ListB.FrameC.DialogD.Panel5-3下列关于实现图形用户界面的描述中,错误的是DA.放在容器中的组件首先要定义,接着要初始化B.放在容器中的多个组件是要进行布局的,默认的布局策略是FlowLayout C.容器中所有组件都是事件组件,都可以产生事件对象D.事件处理是忧监听者定义的方法来实现的5-4下列关于组件类的描述中,错误的是AA.组件类中包含了文本组件类(TextComponent)和菜单组件类(MenuComponent)B.标签(Label)和按钮(Button)是组件类(Component)的子类C.面板(Panel)和窗口(Window)是容器类(Container)的子类D.文本框(TextField)和文本区(TextArea)是文本组件类(TextComponent)的子类5-5在对下列语句的解释中,错误的是Cbut.addActionListener(this);A.but是某种事件对象,如按钮事件对象B.this表示当前容器C.ActionListener是动作事件的监听者D.该语句的功能是将but对象注册为this对象的监听者5-6所有事件类的父类是CA.ActionEvent B.AwtEvent C.KeyEvent D.MouseEvent5-7所有GUI标准组件类的父类是CA.Buttom B.List C.Component D.Container5-8下列各种布局管理器中Window类、Dialog类和Frame类的默认布局是CA.FlowLayout B.CardLayout C.BorderLayout D.GridLayout5-9在下列各种容器中,最简单的无边框的又不能移动和缩放的只能包含在另一种容器中的容器是DA.Window B.Dialog C.Frame D.Panel5-10下列关于菜单和对话框的描述中,错误的是CA.Frame容器是可以容纳菜单组件的容器B.菜单条中可包含若干个菜单,菜单中又可包含若干菜单项,菜单项中还可包含菜单子项C.对话框与Frame一样都可作为程序的最外层容器D.对话框内不含有菜单条,它由Frame弹出判断题5-1 AWT是抽象窗口工具包的英文缩写。
Java按章节练习题

6. public Middle() {x+=1; )
7. public static void main (String [] args) {
8. Middle m = new Middle();
9. System. out .println (x);
IO. }
II. }
结果为:
A.1
B. 2
C.3
line5: int %opercent=9; 哪行无法通过编译? A.Line1 B.Line3 C. Line4 D. Line5
7.现有:
1. class Top {
2.
static int x=l;
3. public Top (inty) { x*=3; }
4. }
5. class Middle extends Top {
目录
第一章练习题(Java 入门) ............................................................................................... 2 第二章练习题(数据类型和运算符) ................................................................................ 4 第三章练习题(流程控制与数组) .................................................................................. 10 第四章练习题(封装) ..................................................................................................... 17 第五章练习题(继承) ..................................................................................................... 23 第六章练习题(抽象类与接口)...................................................................................... 30 第七章练习题(多态) ..................................................................................................... 37 第八章练习题(异常) ..................................................................................................... 44 第十二章练习题(基于 Swing 的图形用户界面设计)................................................... 50 第十三章练习题(Java 事件驱动编程)......................................................................... 55
JAVA考试题库第六章

二 判断题
6-1.异常是一种特殊的运行错误的对象。(对) 6-2.异常处理可以使整个系统更加安全和稳定。(对) 6-3.异常处理是在编译时进行的。(错) 6-4.Java 语言中异常类都是 ng.Throwable 的子类。(对) 6-5.Throwable 类有两个子类:Error 类和 Exception 类。前者由系统保留,后者供应用程序使用。(对) 6-6.异常通常是指 Error 类和 Exception 类。(错) 6-7.Exception 类只有一个子类为 RuntimeException。(错) 6-8.在异常处理中,出现异常和抛出异常是一回事。(错) 6-9.运行时异常是在运行时系统检测并处理的。(错) 6-10.使用 try-catch-finally 语句只能捕获一个异常。(错) 6-11.捕获异常时 try 语句后面通常跟有一个或多个 catch()方法用来处理 try 块内生成的异常事件。(对) 6-12.使用 finally 语句的程序代码为该程序提供一个统一的的出口。(对) 6-13.抛出异常的方法说明中要加关键字 throws,并在该方法中还应添加 throw 语句。(对) 6-14.创建异常类时要给出该异常类的父类。(对) 6-15.如果异常类没有被捕获将会产生不正常的终止。(对) 三 分析程序的输出结果
6-1.Exer6_1.java public class Exer6_1 { public static void main(String args[] )
JAVA测试题(5-8章)

JAVA测试题(5-8章)1、下列关于方法的说法中不正确的是________A. 非void方法中,return语句是必需的B. 重载是指两个方法具有不同的名称但有相同的参数列表C. 方法可以是带返回值的,也可以是不带返回值的D. 方法抽象是把方法的应用同实现分离开来2、下列方法不属于/doc/e85823385.html,ng.Math类的有________ A.random() B.abs() C.equals() D.pow()3、下面变量var的作用域范围是________1) int x;2) switch(x){3) case 0:4) {5) int var;6) //process7) }8) break;9) case 1:10) {11) int var1;12) //process13) }14) break;15) }A. 1和16行之间B. 3和7行之间C. 5和7行之间D. 5和13行之间4、在main方法中运行sign(3)后程序的输出结果是________public static int sign(int n){if(n>0) return 1;else if(n==0) return 0;else if(n<0) return -1;}A. 1B. nullC. 编译不通过D. 编译通过,运行不通过5、下面关于包的描述中,错误的是________A. 包是若干对象的集合B. 使用package语句创建包C. 使用import语句引入包D. 包是类的容器6、哪一项不是方法中参数列表所要指定的内容________A. 参数类型B. 参数次序C. 参数数量D. 返回值类型7、下列关于局部变量的说法中错误的是________A. 局部变量的作用域是指它在方法中的范围限制B. 局部变量在引用前不需要初始化C. 局部变量的作用域从被定义开始,到包含它的块结束为止D. 局部变量应当先声明后使用8、下面Java源程序代码段不正确的是________A.import java.io.*; B.import java.io.*;package testpackage; class Person{/* do something... */} public class Test{/* do something... */} public class T est{/* do something... */} C.import java.io.*; D.package testpackage;import java.awt.*; public class Test{/* do something... */} public class Test{/* do something... */}9、Java语言中main方法的返回值类型是________A. publicB. stringC. voidD. static10、为了使包sos在当前程序中可见,可以使用的语句是________A. import sos.*;B. package sos.*;C. sos import;D. sos package;11、下列关于Java语言的数组描述中,错误的是________A. 数组的长度通常用length表示B. 数组下标从1开始C. 数组元素是按顺序存放在内存的D. 数组在创建时会自动赋初值12、下面哪一个选项合法创建并初始化了数组?________A. int [] myList = {“1”, “2”, “3”};B. int [] myList = (5, 8, 2);C. int myList [] [] = {4,9,7,0};D. int myList [] = {4, 3, 7};13、执行完以下代码int [ ] x = new int[25];后,以下哪项说明是正确的________A. x[24]为0B. x[24]未定义C. x[25]为0D. x[0]为空14、已知表达式int m[] = {0, 1, 2, 3, 4, 5, 6 };下面哪个表达式的值与数组元素总数相等?________A. m.length()B. m.lengthC. m.length()+1D. m.length+115________A.数组是一种对象B.数组属于一种基本数据类型C.数组的大小可任意改变D.数组元素的内存位置与普通数据类型相同16、运行下列程序后的输出结果是________public class T7{static int arr[] = new int[10];public static void main(String a[]) {System.out.println(arr[1]);}}A.编译时将产生错误B.编译时正确,运行时将产生错误C.输出零 D.输出空17、Java应用程序的main方法中有以下语句,则输出的结果是________ int[] x={2,3,-8,7,9};int max=x[0];for(int i=1;i<x.length;i++){< p="">if(x[i]>max)max=x[i];}System.out.println(max);A. 2B. -8C. 7D. 918、以下代码的输出结果是________int[][] array=new int[5][6];int[] x={1,2};array[0]=x;System.out.println(array[0][1]);A. 1B. 2C. 0D. null19、以下代码的输出结果是________int x=30;int[] numbers=new int[x];x=60;System.out.println(x);System.out.println(numbers.length);A. 30 30B. 30 60C. 60 30D. 60 6020、下列哪个选项是正确计算42度(角度)的余弦值________A. double d=Math.cos(42);B. double d=Math.cosine(42);C. double d=Math.cos(Math.toDegrees(42));D. double d=Math.cos(Math.toRadians(42));21、下面关于类的说法错误的是________A. 类是Java语言中的一种复合数据类型B. Java语言的类支持单继承和多继承C. 类是对所有具有一定共性的对象的抽象D. 类中包含数据变量和方法22、下面哪个关键字不是用来控制对类成员的访问的?________A. publicB. protectedC. defaultD. private23、设x,y 均为已定义的类名,下列声明对象x1的语句中正确的是________A. public x x1= new y( );B. x x1=x( );C. x x1=new x( );D. int x x1;24、下列关于变量的叙述错误的是________A. 实例变量是类的成员变量B. 在方法中定义的局部变量在该方法被执行时创建C. 实例变量必须用关键字static声明D. 局部变量在使用前必须被初始化25、对于由private修饰的成员变量,以下说法正确的是________A.可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类B.可以被两种类访问和引用:该类本身、该类的所有子类C.只能被该类自身所访问和修改D.只能被同一个包中的类访问26、下面关于构造函数的说法不正确的是________A. 构造函数也属于类的方法,可在创建对象的时候给成员变量赋值B. 构造函数不可以重载C. 构造函数没有返回值D. 构造函数一定要和类名相同27、下面说法正确的是________A. 必须用static关键字声明实例变量B. 实例变量是类的成员变量C. 局部变量在方法执行之前创建D. 局部变量在使用时无需初始化28、下面哪个函数是public void example(){...}的重载函数________A、public static void example() {...}B、public int example( ) {...}C、public void example2( ) {...}D、public int example ( int m, float f) {...}29、下列代码中的"this"指的是________的对象。
JAVA复习带答案

第一章java 开发入门1.java语言的特点:简单,面向对象,安全,跨平台,支持多线程。
简单:(丢弃了C++中难于理解的运算符重载,多继承,指针等,并且提供自动垃圾回收机制)面向对象:只支持单继承,纯面向对象的语言。
安全:不支持指针,一切内存访问必须通过对象实例来实现,从而使应用更安全。
跨平台:同一段程序既可以在window运行也可以在Linux运行多线程:支持多线程。
下列选项哪个不属于java语言包含的内容?()A 具有类与对象B 一次编译处处运行C 具有多线程的能力D 具有多继承的特点下列关于java语言特点错误的是()A.java语言可以进行面向对象编程也可以面向过程编程B.java语言是面向对象的语言C.java语言支持跨平台编程D.java语言支持多线程下列特点不属于java语言的是()A.多线程B.多继承C.跨平台D.垃圾自动回收2.java程序为什么能跨平台?通过java虚拟机可以达到跨平台的特性。
3. java程序的编译过程:源文件a.java-→编译 a.class(字节码文件) →虚拟机运行下面哪种类型的文件可以在java虚拟机中运行?A . .java B. .jre C. .exe D. .class在Java中 负责对字节码解释执行的是( )。
A.垃圾回收器B.虚拟机C.编译器D.多线程机制编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( )。
A. .javaB. .classC. .htmD. .exe第二章java编程基础1.java代码基本格式java语言区分大小写,程序代码必须写在一个类中Java中main()函数的返回值是()。
A、StringB、intC、charD、voidvoid的含义 ( )A方法没有返回值B方法体为空C没有意义 D. 定义方法时必须使用2. java标识符可以由任意顺序的大小写字母、数字、下划线_和美元符号$组成,但不能以数字开头,不能是java关键字。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第五章多线程
选择题
1. 线程调用了sleep()方法后,该线程将进入( C )状态。
A.可运行状态
B.运行状态
C.阻塞状态
D.终止状态
2. 关于java线程,下面说法错误的是(D)
A.线程是以CPU为主体的行为
B. java利用线程使整个系统成为异步
C.创建线程的方法有两种:实现Runnable接口和继承Thread类
D. 新线程一旦被创建,它将自动开始运行
3.在java语言中,临界区可以是一个语句块,或者是一个方法,并用(A )关键字标识。
A.synchronized
B.include
C.import
D.Thread
4. 线程控制方法中,yield()的作用是(D)
A.返回当前线程的引用
B.使比其低的优先级线程执行
C.强行终止线程
D.只让给同优先级线程运行
5. java用(A)机制实现了进程之间的异步执行
A.监视器
B.虚拟机
C.多个CPU
D.异步调用
6. 下面代码运行的结果是什么?(D)
public class MyThread implements Runnable {
String myString = "Yes ";
public void run() {
this.myString = "No ";
}
public static void main(String[] args) {
MyThread t = new MyThread();
new Thread(t).start();
for (int i=0; i < 10; i++)
System.out.print(t.myString);
}
}
A. 打印yes yes yes yes yes yes B. 打印no no no no no no no no
C. 打印yes no yes no ye no ye no D. 不确定
二、填空题
1.____多线程____是java程序的并发机制,它能同步共享数据、处
理不同的事件。
2.线程的创建有两种方法:实现_____ Runnable ____接口和继承
Thread类。
3.多线程程序设计的含义是可以将程序任务分成几个____并行____
的子任务。
4.java中,新建的线程调用start()方法、如myThread.start(),将
使线程的状态从New(新建状态)转换为___可运行状态______。
第六章
一、是非题
1. 所谓缺省构造函数就是没有参数的构造函数。
()
2.对象成员变量在对象创建时会获得一个缺省的初始值。
()
3.Java数组随时可以改变大小。
()
4.InputStream和OutputStream读写的数据是8位的。
()
5.Java是强类型语言。
()
6.Java没有指针,引用不能等同于指针。
()
7.protected的成员只能被继承类成员存取。
()
8.任何的Applet都完全不能访问本地资源。
()
9. Anonymous Inner Class (匿名内部类) 可以extends(继承)其它类。
()
10.final类是为防止他人从你的类上派生新类,此类是不可继承的。
()
11.super()和this()方法只能在构造函数里调用。
()
12.接口的所有方法默认都是public,abstract和non-static的。
()
13.接口可以声明成final。
()
二、简述题
1.一个空数组与一个长度为0的数组有什么区别?
2.Vector对象的大小与容量之间有什么区别?
3.String类和StringBuffer类的主要区别是什么?
答案:
一、
1. T
2. T,初始值是0
3. F
4. T, reader和writer是16位
5. T, 要有确定类型的,除过list和log
6. T,指针是可计算的,引用是不可计算的
7. F,包内和子类8. F,授权后可以访问9. T 10.T 11.T 12.T
13.F
二、
答:一个空数组是指不包括任何Object引用的数组对象。
而一个长度为0的数组是指有0个元素的数组对象。
答:一个Vector对象的大小是包含的Object引用的实际数量。
而容量是指为Object 引用分配的存储空间的数量。
答:String类:用于比较两个字符串,查找和抽取串中的字符或子串,字符串与其他类型的转换等,String类对象的内容一旦被初始化就不能再改变。
StringBuffer 类:用于内容可以改变的字符串,可以将其他各种类型的数据增加、插入到字符串中,也可以翻转字符串中原来的内容。
1、阅读下列代码后,正确的说法是(C)
public class Person {
static int arr[] = new int[10];
public static void main(String args[]) {
System.out.println(arr[1]);
}
}
A、编译时将产生错误
B、编译时正确,运行时将产生错误
C、输出零
D、输出空
2、仔细分析下面程序,正确的输出结果是( C )
public class Test1 {
public static void changeStr(String str) {
str = "welcome";
}
public static void main(String[] args) {
String str = "1234";
changeStr(str);
System.out.println(str);
}
}
A、welcome
B、welcome1234
C、1234
D、1234welcome
3、Java语言中的一些常用的实用工具,如处理时间的Date类,处理变长数组的Vector 类等,所在的包是( D )。
A、ng包
B、java.io包
C、java.awt包
D、java.util包
4、下面代码执行后,正确的输出结果是:( A )
String s1="You are hired!";
System.out.println(s1.replace('h','f')); //用f把字串中的h替换了
System.out.println(s1);
A. You are fired!
B. You are fired!
You are hired! You are fired!
C. You are hired!
D. You are hired!
You are hired! You are fired!
5、下面的程序段执行后输出的结果是( C )
StringBuffer buf=new StringBuffer("China2008");
buf.insert(5,"@");
System.out.println(buf.toString());
A、China2008@
B、@China2008
C、China@2008
D、China#2008
6、在Java中,所有类的根类是( A )。
A、ng.Object
B、ng.Class
C、java.applet.Applet
D、java.awt.Frame
7、应用程序的main方法中有以下语句,则输出的结果是( A )。
String s1=new String("abc");
String s2=new String("abc");
boolean b1=s1.equals(s2);
boolean b2=(s1= =s2);
System.out.print(b1+" "+b2);
A)true false B) false true C) true true D)false false
友情提示:部分文档来自网络整理,供您参考!文档可复制、编制,期待您的好评与关注!。