Java程序分析研究报告第1-4章练习题参考答案
java程序设计第1-4章练习题参考答案 (1)
一、选择题1.下面供选字符序列中,不属于...Java语言关键字的是( A ) A.goto B.null C.false D.native2.以下是关于Java语言关键字的叙述,其中正确的是( C )A.关键字可以用来描述类的成员类型,但是不能描述普通变量B.关键字由字母(包括英文字母、下划线字符、美元字符、文字字符)和数字组成C.关键字不可以用作变量、方法、类或标号的标识符D.break和main都是Java语言的关键字3.下述字符组合不能作为Java程序标识符的是(D)A.Aa12 B.XC.y D.5x4.在下述字符串中,不属于...Java语言关键字的是( C )A.float B.newC.java D.return5.下列字符组合不能作为Java整型常量的是( A )A.078B.0x3ACBC.5000D.0x3ABC6.设有如下程序:public class Test {public static void main(String[] args) {String foo=args[1];String bar=args[2];String baz=args[3];System.out.println("baz= "+baz);}}下述哪一行命令可以使得执行该程序的输出为baz= 2 ( C )A) java Test 2222 B) java Test 1 2 3 4C) java Test 4 2 4 2 D) java Test 4 3 2 17.在Java语言中,int类型数据的长度是( C )A.1个字节B.2个字节C.4个字节D.8个字节8. 用Java虚拟机执行类名为Hello的应用程序的正确命令是( D )。
A) java Hello.class B) Hello.class C) java Hello.java D) java Hello9.执行以下代码,输出结果是( B )int x=5,y=7,u=9,v=6;System.out.println(x>y ? x+2:u>v ? u-3:v+2);A.8B.6C.7D.true10.下列修饰符中与访问控制无关的是(C)。
java各章习题答案
java各章习题答案Java各章习题答案在学习Java编程语言的过程中,习题是非常重要的一部分。
通过习题,我们可以巩固所学的知识,加深对语言特性和用法的理解。
在每一章的学习结束后,我们都会遇到一系列的习题,这些习题涵盖了本章的知识点,帮助我们检验自己的掌握程度。
下面我们来看一下Java各章习题的答案。
第一章:Java基础知识1.1 什么是Java编程语言?Java是一种面向对象的编程语言,由Sun Microsystems公司于1995年推出。
它具有跨平台性和安全性等特点。
1.2 Java程序的基本结构是什么?Java程序的基本结构包括包名、导入语句、类声明、主方法和其他方法。
1.3 Java中的数据类型有哪些?Java中的数据类型包括基本数据类型和引用数据类型。
基本数据类型包括整型、浮点型、字符型和布尔型。
1.4 Java中的控制语句有哪些?Java中的控制语句包括if语句、switch语句、while循环、for循环等。
第二章:面向对象编程2.1 什么是面向对象编程?面向对象编程是一种程序设计范式,它将数据和方法封装在对象中,通过对象之间的交互来实现程序的功能。
2.2 Java中的类和对象有什么区别?类是一种抽象的概念,它用来描述对象的属性和行为;对象是类的实例,它具体描述了类的属性和行为。
2.3 Java中的继承和多态是什么?继承是一种类与类之间的关系,它允许一个类继承另一个类的属性和方法;多态是一种对象的多种形态,它允许同一个方法在不同的对象上具有不同的行为。
2.4 Java中的封装和抽象是什么?封装是一种将数据和方法封装在对象中的机制,它可以保护数据的安全性;抽象是一种将对象的共性特征提取出来的机制,它可以提高代码的复用性。
第三章:异常处理3.1 什么是异常?异常是程序在运行过程中发生的错误或意外情况,它可能导致程序的中断或崩溃。
3.2 Java中的异常处理机制有哪些?Java中的异常处理机制包括try-catch语句、throw语句和throws关键字等。
java程序设计第1-4章练习题参考答案(1)
java程序设计第1-4章练习题参考答案(1)一、选择题1.下面供选字符序列中,不属于...Java语言关键字的是( A ) A.goto B.null C.false D.native2.以下是关于Java语言关键字的叙述,其中正确的是( C )A.关键字可以用来描述类的成员类型,但是不能描述普通变量B.关键字由字母(包括英文字母、下划线字符、美元字符、文字字符)和数字组成C.关键字不可以用作变量、方法、类或标号的标识符D.break和main都是Java语言的关键字3.下述字符组合不能作为Java程序标识符的是(D)A.Aa12 B.XC.y D.5x4.在下述字符串中,不属于...Java语言关键字的是( C )A.float B.newC.java D.return5.下列字符组合不能作为Java整型常量的是( A )A.078B.0x3ACBC.5000D.0x3ABC6.设有如下程序:public class Test {public static void main(String[] args) {String foo=args[1];String bar=args[2];String baz=args[3];System.out.println("baz= "+baz);}}下述哪一行命令可以使得执行该程序的输出为baz= 2 ( C )A) java Test 2222 B) java Test 1 2 3 4C) java Test 4 2 4 2 D) java Test 4 3 2 17.在Java语言中,int类型数据的长度是( C )A.1个字节B.2个字节C.4个字节D.8个字节8. 用Java虚拟机执行类名为Hello的应用程序的正确命令是( D )。
A) java Hello.class B) Hello.class C) java Hello.java D) java Hello9.执行以下代码,输出结果是( B )int x=5,y=7,u=9,v=6;System.out.println(x>y ? x+2:u>v ? u-3:v+2);A.8B.6C.7D.true10.下列修饰符中与访问控制无关的是(C)。
Java程序设计各章习题及其答案
Java程序设计各章习题及其答案第一章习题及思考题1、Java程序是由什么组成的?一个程序中必须有public类吗?Java源文件的命名规则是怎样的?答:一个Java源程序是由若干个类组成。
一个Java程序不一定需要有public类:如果源文件中有多个类时,则只能有一个类是public 类;如果源文件中只有一个类,则不将该类写成public也将默认它为主类。
源文件命名时要求源文件主名应与主类(即用public修饰的类)的类名相同,扩展名为.java。
如果没有定义public类,则可以任何一个类名为主文件名,当然这是不主张的,因为它将无法进行被继承使用。
另外,对Applet小应用程序来说,其主类必须为public,否则虽然在一些编译编译平台下可以通过(在BlueJ下无法通过)但运行时无法显示结果。
2、怎样区分应用程序和小应用程序?应用程序的主类和小应用程序的主类必须用public修饰吗?答:Java Application是完整的程序,需要独立的解释器来解释运行;而Java Applet则是嵌在HTML编写的Web页面中的非独立运行程序,由Web浏览器内部包含的Java解释器来解释运行。
在源程序代码中两者的主要区别是:任何一个Java Application 应用程序必须有且只有一个main方法,它是整个程序的入口方法;任何一个Applet小应用程序要求程序中有且必须有一个类是系统类Applet的子类,即该类头部分以extends Applet结尾。
应用程序的主类当源文件中只有一个类时不必用public修饰,但当有多于一个类时则主类必须用public修饰。
小应用程序的主类在任何时候都需要用public来修饰。
3、开发与运行Java程序需要经过哪些主要步骤和过程?答:主要有三个步骤(1)、用文字编辑器notepad(或在Jcreator,Gel, BuleJ,Eclipse, Jbuilder等)编写源文件;(2)、使用Java编译器(如Javac.exe)将.java源文件编译成字节码文件.class;(3)、运行Java程序:对应用程序应通过Java解释器(如java.exe)来运行,而对小应用程序应通过支持Java标准的浏览器(如Microsoft Explorer)来解释运行。
Java程序设计 第4章习题参考答案[2页]
第4章习题参考答案一、简答题1.Java提供了哪些数据类型,全部写出来。
整型:byte,short,int,long数值型浮点型:float,double基本数据类型字符型:char数据类型布尔型:boolean类:class复合数据类型字符串:String接口:interface2.如何进行数据类型的转换?有2种方式:自动类型转换:运算时,不同类型的数据先转换成同一类型后再参与运算,转换的原则是位数少的类型转换成位数多的类型,由系统自动处理。
强制类型转换:当位数多的类型向位数少的类型进行转换时,需要用户明确说明要转换的类型,需要用户在程序中指明。
3.类的修饰符有哪些?有什么区别?类的修饰符包括访问控制修饰符、静态修饰符static、最终说明符final。
访问控制修饰符包括4种类型:privat、default、protected、public。
用static声明的成员变量被视为类的成员变量,而不能当成实例对象的成员变量,也就是说,静态变量是类固有的,可以被直接引用,而其它成员变量声明后,只有生成对象时才能被引用。
4.public的类和abstract的类有什么不一样?public的类是公共类,可以被继续,可以实例化,可以被其他包访问。
abstract的类是抽象类,其中一定含有抽象方法,abstract class的子类在继承它时,对非抽象方法既可以直接继承,也可以覆盖;而对抽象方法,可以选择实现,也可以通过再次声明其方法为抽象的方式,无需实现,留给其子类来实现,但此类必须也声明为抽象类。
5.什么是最终类?如何声明?最终类不能被继承,也没有子类。
final类中的方法默认是final的。
final方法不能被子类的方法覆盖,但可以被继承。
final成员变量表示常量,只能被赋值一次,赋值后值不再改变。
声明方法:final class ClassName。
二、操作题1.创建一个学生类Student,包括学号no、姓名name、年龄age、性别sex四个属性以及学习study、实践practice两个方法。
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语言程序设计(郑莉)一到八章课后习题答案
第二章习题答案1.什么是对象、类,它们之间的联系?答:1)对象是包含现实世界物体特征的抽象实体,它反映系统为之保存信息和与它交互的能力。
对象是一些属性及服务的封装体,在程序设计领域,可以用“对象=数据+作用于这些数据上的操作”来表示。
现实生活中对象是指客观世界的实体;在程序中对象是指一组变量和相关方法的集合。
2)类是既有相同操作功能和相同的数据格式的对象的集合与抽象!两者的关系:对象是类的具体实例.。
2.什么是面向对象的程序设计方法?它有那些基本特征?答:面向对象程序设计从所处理的数据入手,以数据为中心而不是以服务为中心来描述系统。
它把编程问题视为一个数据集合,数据相对于功能而言,具有更强的稳定性。
它的特征:抽象,封装,继承,多态。
3.在下面的应用中,找出可能用到的对象,对每一个对象,列出可能的状态和行为。
1)模拟航空预订系统交易的程序2)模拟银行交易的程序答:1)航空预订交易:状态:旅客姓名,身份证号,联系号码,出发地址,抵达地址,出发日期。
行为:订票,领票,买票,退票。
2)银行交易:状态:客户姓名,账号,身份证号。
行为:存款,取款,汇款。
4.请解释类属性、实例属性及其区别。
答:实例属性,由一个个的实例用来存储所有实例都需要的属性信息,不同实例的属性值可能会不同。
5.请解释类方法、实例属性及其区别。
答:实例方法表示特定对象的行为,在声明时前面不加static修饰符,在使用时需要发送给一个类实例。
类方法也称为静态方法,在方法声明时前面需加static修饰符,类方法表示具体实例中类对象的共有行为。
区别:实例方法可以直接访问实例变量,调用实例方法,实例方法可以直接访问类变量,调用类方法;类方法可以直接调用类变量和类方法,类方法不能直接调用实例变量和实例方法;6.类的访问控制符有哪几种?具体含义及其区别。
答:类的访问控制符只有public(公共类)及无修饰符(默认类)两种。
区别:当使用public修饰符时表示所有其他的类都可以使用此类;当没有修饰符时,则只有与此类处于同一包中的其他类可以使用类。
Java语言程序设计 课后习题+答案
第一章课后习题1.编译Java程序的命令是什么?2.执行Java程序的命令是什么?3.Java应用程序和小程序的区别是什么?4.编写一个application ,实现在屏幕上打印自己名字的功能。
第一章课后习题答案1.编译Java程序的命令是什么?答案:javac 源文件名2.执行Java程序的命令是什么?java 主类名3.Java应用程序和小程序的区别是什么?Java application⏹由Java解释器独立运行字节码⏹由专门的命令行启动程序执行⏹程序中有定义了main()方法的主类Java applet⏹不能独立运行,字节码必须嵌入HTML文档⏹当浏览器调用含applet的Web页面时执行⏹程序中含有java. applet. Applet 类的子类4.编写一个application ,实现在屏幕上打印自己名字的功能。
class Test{public static void main(String[] args){System.out.println(“张三”);}}第二章课后习题(1)一、选择题1.下列变量定义错误的是。
A) int a; B) double b=4.5; C) boolean b=true; D)float f=9.8;2.下列数据类型的精度由高到低的顺序是:a)float,double,int,longb)double,float,int,bytec)byte,long,double,floatd)double,int,float,long3.执行完下列代码后,int a=3;char b='5';char c=(char)(a+b);c的值是?A)’8’ b)53 c)8 d)564.Unicode是一种_____________A) 数据类型 B)java包 C)字符编码 D)java类5.6+5%3+2的值是___________A)2 B)1 C) 9 D)106.下面的逻辑表达式中合法的是__________A)(7+8)&&(9-5) B)(9*5)||(9*7) C)9>6&&8<10 D)(9%4)&&(8*3) 7.java语言中,占用32位存储空间的是__________。
Java练习题1-4章
第1章Java开发入门一、填空题1、Java程序的运行环境简称之为______。
2、编译Java程序需要使用______命令。
3、和两个可执行程序存放在JDK安装目录的______目录下。
4、______环境变量用来存储Java的编译和运行工具所在的路径。
二、选择题1、Java属于以下哪种语言A、机器语言B、汇编语言C、高级语言D、以上都不对2、下面哪种类型的文件可以在Java虚拟机中运行A、.javaB、.jreC、.exeD、.class3、安装好JDK后,在其bin目录下有许多exe可执行文件,其中命令的作用是以下哪一种A、Java文档制作工具B、Java解释器C、Java编译器D、Java启动器4、如果jdk的安装路径为:d:\jdk,若想在命令窗口中任何当前路径下,都可以直接使用javac和java命令,需要将环境变量path设置为以下哪个选项A.d:\jdk;B.d:\jdk\bin;C.d:\jre\bin;D.d:\jre;第2章基本数据类型与数组一、填空题1、Java中的程序代码都必须在一个类中定义,类使用______关键字来定义。
2、布尔常量即布尔类型的两个值,分别是______和______。
3、Java中的注释可分为三种类型,分别是______、______、______。
4、Java中的变量可分为两种数据类型,分别是______和______。
5、在Java中,byte类型数据占______个字节,short类型数据占______个字节,int类型数据占______个字节,long类型数据占______个字节。
6、在逻辑运算符中,运算符______和______用于表示逻辑与,______和______表示逻辑或。
7、若x = 2,则表达式( x + + )/3 的值是______。
8、若int a =2; a+=3;执行后,变量a的值为______。
9、若int []a={12,45,34,46,23}; ,则a[2]= ______。
Java初级前四章阶段小测试以及答案.doc
阶段小测试选择题(40)1 .名为HelioWorld・java的Java应用程序如卜:public class HelloWorld{publie static void main(String args[]){System, out.printin (n Hello World! *');}}将这个程序放在C:\Test下,然后在命令行窗口中,进入到C:\Test路径执行如下指令:javac HelloWorld. java将得到()结果。
A.编译出错。
B.编译成功,生成名为HelloWorld. class的文件。
C.编译成功,生成名为helloworId.class的文件。
D.找不到名为helloworld, java的文件。
2.在当前的java实现屮,每个文件编译之后就是一个以()为后缀的文件A.javaB.class.C.docD.exe3.下列属于三目(条件)运算符的是:A.+B.?:C.&&D.>4.已知i为整形变量,关于一元运算++i和i++,下列说法正确的是:A.++i运算将出错B.在任何情况下运行结果都一样C.在任何情况下运行结果都不一样D.在任何情况下变量i的值都增加15.在java语句中:37.2%10的运算结果为:A.7.2B.7C. 3D.0.26.在java语句屮,运算符&&实现A.逻辑或B.逻辑与C.逻辑非D.逻辑相等7、下列数据类型,必须进行强制转换的是:A.byte —> intB.short —> longC.float —> doubleD.int 一> char8、下面哪一个不是合法的标识符?A、x$B、@abc123C、1XD、XYZ9、int类型数据占用多少位?A、32B、64C、16D、2010、Java Application程序中有且只能有一个main方法,该方法头的书写合法的是。
JAVA程序设计习题(1-5章学生作业)
JA V A程序设计练习题(一)一、单选择题1、编译Java源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( )。
A. javaB. classC. htmlD.exe2、设x = 1 , y = 2 , z = 3,则表达式y+=z--/++x 的值是( )。
A. 3B. 3. 5C. 4D. 53、如下哪个是Java中的标识符()A、publicB、superC、3numberD、width4、如下哪个是Java中的标识符( )A、fieldnameB、thisC、3numberD、#number5、如下哪个是Java中有效的关键字()A、nameB、helloC、falseD、good6、下面的代码段执行之后count的值是什么( )int count = 1;for (int i = 1; i <= 5; i++) {count += i;}System.out.println(count);A、5B、1C、15D、167、定义一个类,必须使用的关键字是( )A、publicB、classC、interfaceD、static8、定义一个接口必须使用的关键字是()A、publicB、classC、interfaceD、static9、下面程序段执行后b的值是( )。
Integer integ =new Integer(9);boolean b = integ instanceof Object;A) 9 B) true C) 1 D) false10、关于选择结构下列哪个说法正确?()A.if语句和else语句必须成对出现B.if语句可以没有else语句对应C.switch结构中每个case语句中必须用break语句D.switch结构中必须有default语句11、while循环和do…wh ile循环的区别是:()A.没有区别,这两个结构任何情况下效果一样B.while循环比do…while循环执行效率高C.while循环是先循环后判断,所以循环体至少被执行一次D.do…while循环是先循环后判断,所以循环体至少被执行一次12、关于for循环和while循环的说法哪个正确?()A.while循环先判断后执行,for循环先执行后判断。
《JAVA程序分析研究报告》习题集附参考标准答案IT文库
《JA V A程序设计》习题集及参考答案一、填空题Java是面向对象地解释型地高级编程语言,其程序源代码地扩展名为.java生成地字节码文件名地扩展名为.class,Java解释器把各种平台间地差异隐藏起来,这种由解释器包裹起来地完整地软硬件平台称为Java 虚拟机.Java Application 是独立、完整地程序,在命令行调用独立地解释器软件(java.exe)即可运行,其程序主类必须有一个main()方法,完整地方法头为public static void main(String aegs[]) .把方法看作是数据地特性,而不把数据和方法分开,JA V A正是体现了这种建立面向对象系统过程中重要步骤地思想..建立类类型地变量(引用)后,系统只分配引用空间,程序员要调用new来创建对象实例,然后才分配相应地存储空间.如果需要在同一类中书写多个方法,让它们对不同地变量进行同样地操作,就需要重载方法名.如果子类中定义方法所用地名字、返回类型和参数表和父类中方法使用地完全一样,称子类方法覆盖了父类中地方法.覆盖地同名方法中,子类方法不能比父类方法地访问权限更严格.容器中组件地位置由容器地布局管理器决定,容器不仅可以容纳组件,还可以容纳其它容器这一点非常重要,由此可以设计出复杂地图形用户界面布局.7.Java抽象窗口工具中提供了多种容器,其中最重要地两种是框架和面板.JDK1.1引入了委托模型处理机制,组件必须注册一个事件处理程序,事件对象只传递给已经注册地监听程序,每种事件都有一个对应地监听程序类以实现相应地监听程序接口,并定义了事件对象地接收和处理方法.9.异常处理地重要性在于,程序不但要发现异常,还要捕获异常并编写代码来处理类是同种对象集合地抽象,而属于类地某一个对象则被称为是类地一个实例,对象是具有状态、行为、标志三种属性地计算机软件结构.用户自己定义地Applet子类是Java Applet地标志.实际运行中,浏览器在下载字节码地同时,会自动创建一个用户Applet子类地实例,并在适当事件发生时自动调用该实例地几个主要方法是:init()方法、start()方法、paint()方法、stop()方法和destroy()方法.Java Application 是独立、完整地程序,在命令行调用独立地解释器软件(java.exe)即可运行,其程序主类必须有一个main()方法,完整地方法头为public static void main(String aegs[]) .Java Applet程序需要与浏览器中已预先实现好地功能结合,才能构成一个完整地程序,其直接父类必须为Applet 类,Applet所需做地是接收浏览器发送给它地消息或事件,如鼠标移动、击键等,并作出及时地响应..JDK1.1事件处理机制引入了委托事件模型,如ActionEvent类表达地事件由ActionListener 接口中定义地方法actionPerformed()来负责响应和处理.3.Java程序可以分为两大类:一类称为Application 程序,另一类称为Applet 程序.4.Java解释器只能执行JVM编译地代码,Java解释器有三项主要工作:下载代码、校验代码、和执行代码.关系运算符“= =”可判定两个字串对象是否是同一实例,即它们在内参中地存储空间是否相同,而equals() 方法可以判定两个字串是否相等.构造方法是特殊地类方法,它地名字与类名相同,无返回值,在创建对象实例时由new 运算符自动调用.用户自定义地所有异常类都必须是Exception地子类,程序中发生异常时,程序员可以抛出(throw)一个异常实例.线程由Thread对象地实例来引用.线程执行地代码来源于传递给Thread 构造方法地参数引用地类,这个类必须实现了接口Runnable.一般在关闭一个缓冲输出流之前应使用flush() 方法强制输出剩余数据,以确保缓冲区内地数据全部写入数据流.BorderLayout布局管理器管理下,组件必须通过add() 方法加入容器地五个区域,而f.setVisible(true) ;语句可以使框架f以及它所包含地组件对用户可见.21.被标记为final 地方法将不能被覆盖,而抽象类abstract class必须被继承Java虚拟机(JVM)是编译后地Java程序和硬件系统之间地接口,是用软件方法实现地一台假想机.JVM使用地代码存储在.class 文件中.Java Applet中地init() 方法仅在开始地时候执行一次,start() 方法在用户每次访问包含Applet地HTML文件时都会被调用,repaint() 方法可以用来更新Applet地画面.Java 对class类型变量地内存分配分两步进行:说明变量时,在内存中为其建立一个引用,然后程序员需用new 申请相应地内存空间.JDK1.1事件处理机制引入了委托事件模型,如ItemEvent类表达地事件由ItemListener 接口中定义地方法itemStateChanged(ItemEvent e)来负责响应和处理.Java所有包中都定义了异常类和错误类,Exception类是所有异常地父类,Error 类是所有错误地父类,这两个类同时又是Throwable 地子类.对于类FileInputStream地实例对象,如果所指定地文件不存在,则产生FileNotFoundException 异常,由于它是非运行时异常,因此必须加以捕获或声明.28.面向对象地程序设计中,重载方法属于同一个类,而覆盖方法分属于父、子类.29.创建线程有两种方法,一种是继承Thread类,另一种是实现Runnable接口.一个线程被创建,实际并没有立即运行,必须通过方法start() 来启动,所以也可以把这一过程想象为打开虚拟CPU 地开关.Java是面向对象地解释型地高级编程语言,其程序源代码地扩展名为.java 生成地字节码文件名地扩展名为.class ,Java解释器把各种平台间地差异隐藏起来,这种由解释器包裹起来地完整地软硬件平台称为Java 虚拟机.类是同种对象集合地抽象,而属于类地某一个对象则被称为是类地一个实例,对象是具有状态、行为、标志三种属性地计算机软件结构.用户自己定义地Applet子类是Java Applet地标志.实际运行中,浏览器在下载字节码地同时,会自动创建一个用户Applet子类地实例,并在适当事件发生时自动调用该实例地几个主要方法是:init()方法、start()方法、paint()方法、stop()方法和destroy()方法.二、判断题1.JAVA程序是由若干类定义组成地,类定义包括定义类头和定义类体.(√)2.类头定义主要说明类地名字、父类名和接口名.(×)3.引用一个类地属性或调用其方法,必须以这个类地对象为前缀.(×)4.有地类定义时可以不定义类构造函数,所以构造函数不是必须地.(×)5.类及其属性、方法可以同时有一个以上地修饰符来修饰.(√)6.抽象类没有具体对象,所以抽象类没有构造函数.(×)7.接口是特殊地类,所以接口也可以继承,子接口将继承父接口地所有常量和抽象方法.(√)8.Class1类地属性被private修饰符修饰为私有变量,所以方法不能访问它.9.一个Java类可以有一个父类,并实现多个接口.(√)10.如果a 是父类Parent地对象,而b是子类Child地对象,则语句a=b是正确地.(√)11.用画矩形方法需要给出地是矩形左上和右下角地坐标.(×)12.TextField和TextArea是用来接受用户输入地组件,但是也可以由程序控制使用户不能在其中输入信息.(√)13.下面地语句把组件com加入到容器地中央:add(Center,com);.(×)14.一个Checkbox对象既可以作为一个复选按钮,也可以作为一个单选按钮组中地一个按钮.(√)15.当用户鼠标移入Applet地区域范围时触发mouseEnter()方法,当用户鼠标移出Applet地区域范围时触发mouseExit()方法. (√)16.用“+”可以实现字符串地拼接,用“—”可以从一个字符串中去除一个子串.(×)17.在Applet中调用方法showStatus(String s),可以把字符串s地内容显示在运行Applet地浏览器下方地状态栏中.(√)18.一个容器必须使用FlowLayout、BorderLayout、GridLayout、CardLayout 和GridBagLayout五种布局策略中地一种.(×)二维数组说明语句: int []a3[] = new int[4][6]; .(对)20.创建新地类对象使用关键字new,回收无用地类对象使用关键字free.(错)如已经定义char ch; ,从键盘上输入一个字符送到ch,可用标准输入流:ch=System.in.read();(错)当一个方法在运行过程中产生一个异常,则这个方法会终止,但是整个程序不一定终止运行.(对)23.所有地鼠标事件都有由MouseEvent类地对象表示.(对)TextField和TextArea是用来接受用户输入地组件,但是也可以由程序控制使用户不能在其中输入信息.(对)因为Java 不支持多重继承,所以定义类时implements关键字后面只能说明一个接口名.(错)26.抽象方法必须在抽象类中,所以抽象类中地方法都必须是抽象方法.(错)一个Java类可以有多个父类(错28.构造函数因为没有返回值,所以其中出现地错误用异常处理较为恰当(对)29.用“+”可以实现字符串地拼接,用“-”可以从一个字符串中去除一个子串(错)30.在Applet中调用方法showStatus(String s),可以把字符串s地内容显示在运行Applet地浏览器下方地状态栏中(对)31.getImage()方法与drawImage()方法都是Image对象地方法(错)32.Java可以显示地图像文件类型包括后缀为.jpg和.gif地两种文件格式(对)33.一个容器中可以混合使用多种布局策略(对)34.一个Checkbox对象既可以作为一个复选按钮,也可以作为一个单选按钮组中地一个按钮(对)35.当用户鼠标移入Applet地区域范围时触发mouseEnter()方法,当用户鼠标移出Applet地区域范围时触发mouseExit()方法(对)36.可以先创建一个空白地Label对象,然后再向里面设置具体地文本内容(错)37.一个容器必须使用FlowLayout、BorderLayout、GridLayout、CardLayout 和GridBagLayout五种布局策略中地一种(错)38.接口KeyListener中有两个抽象方法KeyUp()和KeyDown() (错)39.使用GridLayout布局策略地容器中,所有组件都有相同大小(对)40.一个程序里有且只能有一个公共类,它就是主类.(对)41.lass1类地属性被private修饰符修饰为私有变量,所以方法不能访问它.(错)42.最终类不能派生子类,最终方法不能被覆盖.(对)43.子类要调用父类地方法,必须使用super关键字.(错)44.一个Java类可以有一个父类,并实现多个接口. (对)接口是特殊地类,所以接口也可以继承,子接口将继承父接口地所有常量和抽象方法.(对)46.调用画矩形方法需要给出地是矩形左上和右下角地坐标.(错)TextField和TextArea是用来接受用户输入地组件,但是也可以由程序控制使用户不能在其中输入信息.(对)48.下面地语句把组件com加入到容器地中央:add(Center,com);.(错)二维数组说明语句: int a[5][5] = new int[][]; .(错)50.一个容器可以使用多种布局管理器.(对)51.子类要调用父类地方法必须使用super关键字.(错)某程序中地主类不是Thread地子类,也没有实现Runnable接口,则这个主类运行时不能控制主线程睡眠.(错)一个Chckbox对象既可以作为一个复选按钮,也可以作为一个单选按钮组中地一个按钮.(对)选中菜单项时将引发ItemEvent事件.(错)MenuItem也可以添加到MenuBar上.(错)56.所有鼠标事件都是由实现了MouseListener监听接口地监听者来处理.(错)getImage()方法与drawImage()方法都是Image对象地方法.(错)Panel和Applet也可以拥有菜单.(错)三、一句话写程序1.定义一个类,其名称为MyClass,它可以被所有其它类访问.public class MyClass { }2.比较String 类地对象str是否和字串“abcde”相等,并把结果赋予变量result boolean result =str.equals(“abcde”)3.设bt是一个按钮对象,把它注册给相应地监听器(设为当前容器)bt.addActionListener(this);4.定义一个标签prompt ,并显示”Input Please:”地语句为:Label prompt=new Label(“Input Please:”)5.创建一个有3个数组地数组matrix,每个数组又有4个整数.int matrix[][]=new int[3][4];6.把组件对象output加入到图形界面.add(output);7.将当前颜色设置成红色g.setColor(Color.red);8.得到在文本框input1输入地信息并送到整型变量days中.days=Integer.parseInt(input1.getText());9.得到在文本框input2输入地信息并送到实型变量out中.out=Double.valueOf(input2.getText()).double.V alue();10.创建一个FlowLayout,使应用该布局管理器地各个组件都向右对齐排列FlowLayout f1=new FlowLayout(FlowLayout.RIGHT);11. 定义一个整型变量Mine,使得只有这个类本身可以访问它.private int Mine;12创建类Class1地一个对象Object1.Class1 Object1 =new Class1();13.. 设sb 是一个滚动条对象,把它注册给响应事件监听器(设为当前容器):sb.addAdjustmentListener(this);14. 为HTML文件书写一个语句,向Applet传送一个名为”param1”,数值为”25”地Applet参数.<param name=”param1” value=”25”>15. 创建一个复选框cb,标签为“注册用户”.Checkbox cb=new Checkbox(“注册用户”);16.一般菜单条最右边有一个帮助菜单,现有一个帮助菜单helpmenu,将它添加到菜单条mb中.mb.setHelpMenu(helpmenu);17. 获取文本区域area1中被用户选中地文字,添加到另一个文本区域area2中.area2.append(area1.getSelectedText());18. 使面板pan地布局管理器失效.pan.setLayout(null);19.调用对象Object1地方法method1,把返回值赋值给变量Hold.Hold=Object1.method1();20. 定义一个整型属性Mine,使得只有这个类本身可以访问它.private int Mine;21. 定义一个抽象方法abstractMethod,没有形式参数,返回值为布尔型量.abstract boolean abstractMethod();22. 为HTML文件书写一个语句,向Applet传送一个名为”param1”,数值为”25”地Applet参数.<param name=”param1” value=”25”>23.获得上题从HTML文件中传送来地整型参数赋值给Applet地属mypmyp=Integer.parseInt(getParameter(“param1”));24.当前地颜色设成红色.g.setColor(Color.red);Applet要响应鼠标点击事件,应在init()方法中加入地语句为(设鼠标事件地监听者就是Applet本身):this.addMouseListener(this);26.设sb 是一个滚动条对象,把它注册给响应事件监听器(设为当前容器):sb.addAdjustmentListener(this);27.使窗框mf地大小不可由用户鼠标随意改变.Mf.setResizeable(false);28.获取文本框tf1中被用户选中地文字,添加到另一个文本框tf2中.tf2.setText(tf2.getText()+tf1.getSelectedText());29.建一个列表,列表地高度可以显示三个选项,这个列表是可以多选地.List MyList = new List(3,true);30.创建一个复选按钮,标签为“注册用户”.Checkbox bm= new Checkbox(“注册用户”);31.义一个类:class Department ,要为类属性:部门编号(整型)、部门名称(字串)、工资总额(浮点型)赋初值,其构造函数地方法名应为:Department(int dno ,String dname,double total) {}32.得名为input文本框中地信息,并把它赋给双精度变量getDoublegetDouble=Double.valueOf(input.getText()).doubleValue();33..将当前前景颜色设置成绿色.g.setForeground(Color,green);33.x 是一个复选框对象,把它注册给响应事件监听器(设为当前容器):fx.addItemListener(this);34.如上题复选框已它注册给响应事件监听器,则系统自动响应复选框状态改变地调用方法为:public void itemStateChanged(ItemEvent e) {}35.创建一个FlowLayout,使应用该布局管理器地各个组件都向右对齐排列.FlowLayout f1= new FlowLayout(FlowLayout.RIGHT);36. 定义一个抽象方法abstractMethod(),无形式参数,返回值为布尔型.abstract boolean abstractMethod();37.语句drawOvel(10,10,150,150)画出一个圆,请画出它地外接矩形.DrawRect(10,10,150,150);38. 创建一个列表myList,列表地高度可以显示三个选项,这个列表是可以多选地.List myList=new List(3,true);39. 把Panel p地背景设置成红色.p.setBackground(Color.red);40. 启动线程t.t.start();41把管道输入数据流pis和管道输出数据流pos连接起来.Pis.connect(pos);42. 获取文本框tf1中被用户选中地文字,添加到另一个文本框tf2中.tf2.setText(tf2.getText()+tf1.getSelectedText());43. 在菜单mm中加入一条分割线.mm.addSeparator();44.为HTML文件书写一个语句,嵌入一个名为MyApplet.class地Applet字节码文件,其宽度为300,高度为200.<APPLET code=MyApplet.class width=300 height=200>45.设bn是一个按钮,把它注册给事件监听器.(设为当前容器)bn.addActionListener(this);三、编程题编写程序找出所有水仙花数并输出,水仙花数是三位数,它地各位数字地立方和等于这个三位数本身,如371=33+73+13,371就是一个水仙花数.public class Narcissus{ public static void main(String args[]){ int I,j,k,n=100,m=1;while(n<100){ i=n/100;j=(n-i*100)/10;k=n%10;if((Math.pow(i,3)+ Math.pow(j,3) + Math.pow(k,3))==n)System.out.println(“找到第“+m++ +”个水仙花数:“+n);n++;}}}2.编写一个计算器,从屏幕输入两个运算整数,并以整数加、减、乘、除地顺序进行四则运算.import java.applet.Applet;import java.awt.*;public class SwitchCalculate extends Applet{Label prompt=new Label(“请输入两整数“);Label operate=new Lable(“+”);TextField operand1=new TextField(6);TextField operand2=new TextField(6);Label result=new Label(“运算结果“);int count=0;public void init(){add(prompt);add(operand1);add(operate);add(operand2);add(result);}public Boolean action(Event e,Object o){ int swt=count++%4;int x=1,y=1;x=Integer.parseInt(operand1.getText());y=Integer.parseInt(operand2.getText());prompt.setText(“请输入两个整数“);switch(swt){case 0:result.setText(“=”+(x+y));operat.setText(“+”);case 1:result.setText(“=”+(x-y));operat.setText(“-”);case 2:result.setText(“=”+(x*y));operat.setText(“*”);case 3:result.setText(“=”+(x/y));operat.setText(“/”);}repaint();return true;}}3.编写以下完整程序:利用二维数组显示如下图形:** ** * *import java .io .*;import java .util .*;public class Class3{public static void main(String args[]){char a[][]=new char[3][3];for(int i=0;i<a.length ;i++)for(int j=0;j<a[i].length ;j++)if(i>=j)a[i][j]='*';elsea[i][j]=' ';for(int i=0;i<a.length ;i++){for(int j=0;j<a[i].length ;j++)System.out.print (a[i][j]+"\t");System.out.println ();}try{System.in.read();}catch(IOException e){};}}4编写一个Applet程序Test.java和运行Test.class地文件Test.html.要求:1.Applet窗口尺寸:450x200;2.创建3个文本框,其中第3个文本框地底色为灰色(不可操作);3.当在第2个文本框输入完一个数字后,按下回车键,将在第3个文本框中显示前2个文本框中数字之和.(前2个文本框中输入地必须是整型数字)import java.applet.*;import java.awt.*;import java.awt.event.*;public class Test extends Applet implements ActionListener{TextField text1,text2,text3;public void init(){text1=new TextField("0");text2=new TextField("0");text3=new TextField("0");text3.setEditable(false);add(text1);add(text2);add(text3);text2.addActionListener(this);}public void actionPerformed(ActionEvent e){int x,y;if(e.getSource()==text2){x=Integer.parseInt(text1.getText());y=Integer.parseInt(text2.getText());text3.setText(String.valueOf(x + y));}}}test.html:<html><applet code=Test.classwidth=450 height=200></applet></html>5.写一个程序,使之具有如下所示界面: 每当选择各组件时,在状态行即时显示选择地内容,当按下”输入”按钮时,能在右边文本域中显示所中选中内容;当按”退出”按钮时,则结束程序地运行.(用JDK1.1事处理机制进行处理)import java .applet.*;import java .awt.*;import java .awt.event .*;import java .util.*;public class UseComponent extends Applet implementsActionListener,ItemListener{ char ch='n',ch1='y';int nj1=0,xb1=0;Checkbox zc=new Checkbox ("注册");CheckboxGroup sex=new CheckboxGroup ();Checkbox maleSex=new Checkbox ("男",true,sex);Checkbox femaleSex=new Checkbox ("女",false,sex);List nj=new List (4,false);Choice xb=new Choice ();TextArea result=new TextArea ("无信息",5,30);Button enter=new Button ("输入");Button exit=new Button ("退出");public void init(){add(zc);zc.addItemListener (this);add(maleSex);maleSex.addItemListener (this);add(femaleSex);femaleSex.addItemListener (this);add(nj);nj.add("一年级上"); nj.add("一年级下");nj.add("二年级上"); nj.add("二年级下");nj.add("三年级上"); nj.add("三年级下");xb.addItemListener (this);nj.addItemListener (this);add(xb); xb.add("信息系"); xb.add("电气系");xb.add("经济系"); xb.add("机械系");xb.add("基础部"); xb.add("国际合作部");add(result);add(enter); enter.addActionListener (this);add(exit);exit.addActionListener (this);}public void itemStateChanged(ItemEvent e){ItemSelectable is=e.getItemSelectable ();if(e.getItem ()=="注册") ch='y';else ch='n';if(is==maleSex) ch1='y';else if(is==femaleSex) ch1='n';if(e.getStateChange()==ItemEvent.SELECTED ) ch='y';else if(e.getStateChange ()==ItemEvent.DESELECTED ) ch='n';if(e.getItem ()=="男") ch1='y';else if(e.getItem ()=="女") ch1='n';if(is==nj)nj1=((List)is).getSelectedIndex ();if(is==xb) xb1=((Choice)is).getSelectedIndex ();showStatus(toString ());}public void actionPerformed(ActionEvent e){ if(e.getActionCommand ()=="输入")result.setText (toString());else System.exit(0);}public String toString(){String s="";if(zc.getState ()==true){s="\n该学生已注册!";}else{s="\n该学生没有注册!";}if(ch1=='y') s=s+"\n性别:男";else if(ch1=='n') s=s+"\n性别:女";if(nj1==0) s=s+"\n一年级上";else if(nj1==1) s=s+"\n一年级下";else if(nj1==2) s=s+"\n二年级上";else if(nj1==3) s=s+"\n二年级下";else if(nj1==4) s=s+"\n三年级上";else if(nj1==5) s=s+"\n三年级下";if(xb1==0) s=s+"\n信息系";else if(xb1==1) s=s+"\n电气系";else if(xb1==2) s=s+"\n经济系";else if(xb1==3) s=s+"\n机械系";else if(xb1==4) s=s+"\n基础部";else if(xb1==5) s=s+"\n国际合作部";return s;}}6.试编写一个Applet完整程序,用JDK1.1事件处理机制,在屏幕上显示一个TextArea(文本域),一个按钮,和一个Label(标签).每当用户点击按钮时,都把TextArea中被选中地文本(即反白显示地文本)复制到Label中.import java.applet.*;import java.awt.*;import java .awt .event .*;public class Applet1 extends Applet implements ActionListener{Label tf;TextArea ta= new TextArea(" \n",6,25);Button bt =new Button("添加");public void init(){add(ta);add(bt);tf=new Label ("选中: ");add("South",tf);bt.addActionListener (this);}public void actionPerformed(ActionEvent e){if(e.getActionCommand ()=="添加"){tf.setText (ta.getSelectedText ());}}}编写一个Applet完整程序,用JDK1.1事件处理机制,在屏幕上显示一个按钮,按钮地标签为”Push Me”,鼠标单击按钮后,标签变为”Pushed”:import java.applet .* ;import java .awt .* ;import java .awt .event .*;public class AmlWrong extends Applet implements ActionListener{Button btn;public void init(){btn=new Button("Push Me");add(btn);btn.addActionListener(this);}public void actionPerformed(ActionEvent e){((Button)e.getSource()).setLabel("Pushed");} }8.用Checkbox表示学生是否注册,CheckboxGroup表示性别,List表示年级,Choice表示学生系别,监听ItemEvent事件,每当用户改变某项选择时,都在Applet状态条中提示这种修改,程序还包括一个按钮,点击时,读取当前所有组件中地选择并显示在一个TextArea中.import java .applet.*;import java .awt.*;import java .awt.event .*;import java .util.*;public class UseComponent extends Applet implements ActionListener,ItemListener{ char ch='n',ch1='y';int nj1=0,xb1=0;Checkbox zc=new Checkbox ("注册");CheckboxGroup sex=new CheckboxGroup ();Checkbox maleSex=new Checkbox ("男",true,sex);Checkbox femaleSex=new Checkbox ("女",false,sex);List nj=new List (3,false);Choice xb=new Choice ();TextArea result=new TextArea ("无信息",5,30);Button enter=new Button ("输入");public void init()add(zc);zc.addItemListener (this);add(maleSex);maleSex.addItemListener (this);add(femaleSex);femaleSex.addItemListener (this);add(nj); nj.add("一年级上"); nj.add("一年级下");nj.add("二年级上"); nj.add("二年级下");nj.add("三年级上"); nj.add("三一年级下");xb.addItemListener (this);nj.addItemListener (this);add(xb); xb.add("信息系"); xb.add("电气系");xb.add("经济系"); xb.add("机械系");xb.add("基础部"); xb.add("国际合作部");add(result);add(enter); enter.addActionListener (this);}public void itemStateChanged(ItemEvent e){ItemSelectable is=e.getItemSelectable ();if(e.getItem ()=="注册") ch='y';else ch='n';if(is==maleSex) ch1='y';else if(is==femaleSex) ch1='n';if(e.getStateChange()==ItemEvent.SELECTED ) ch='y';else if(e.getStateChange ()==ItemEvent.DESELECTED ) ch='n';if(e.getItem ()=="男") ch1='y';else if(e.getItem ()=="女") ch1='n';if(is==nj)nj1=((List)is).getSelectedIndex ();if(is==xb) xb1=((Choice)is).getSelectedIndex ();showStatus(toString ());}public void actionPerformed(ActionEvent e){result.setText (toString());}public String toString(){String s="";if(zc.getState ()==true)s="\n该学生已注册!";elses="\n该学生没有注册!";if(ch1=='y') s=s+"\n性别:男";else if(ch1=='n') s=s+"\n性别:女";if(nj1==0) s=s+"\n一年级上";else if(nj1==1) s=s+"\n一年级下";else if(nj1==2) s=s+"\n二年级上";else if(nj1==3) s=s+"\n二年级下";else if(nj1==4) s=s+"\n三年级上";else if(nj1==5) s=s+"\n三年级下";if(xb1==0) s=s+"\n信息系";else if(xb1==1) s=s+"\n电气系";else if(xb1==2) s=s+"\n经济系";else if(xb1==3) s=s+"\n机械系";else if(xb1==4) s=s+"\n基础部";else if(xb1==5) s=s+"\n国际合作部";return s;}}9.编写一个完整程序Test.java,要求:1.具有一组三个单选按钮如图,当选择Green按钮时,窗口底色会变成绿色,当选择Blue按钮时,窗口底色会变成蓝色,当选择Yellow按钮时,窗口底色会变成黄色.2.使用JDK 1.1事件处理机制.import java.awt.*;import java.awt.event.*;public class Test extends Frame implements ItemListener{staticTest frm=new Test();static Checkbox ckb1=new Checkbox("Green");static Checkbox ckb2=new Checkbox("Blue");static Checkbox ckb3=new Checkbox("Yellow");public static void main(String args[]){CheckboxGroup grp=new CheckboxGroup();frm.setSize(200,150);frm.setTitle("Item Event");frm.setLayout(null);ckb1.setBounds(20,40,80,20);ckb2.setBounds(20,60,80,20);ckb3.setBounds(20,80,80,20);ckb1.setCheckboxGroup(grp);ckb2.setCheckboxGroup(grp);ckb3.setCheckboxGroup(grp);ckb1.addItemListener(frm);ckb2.addItemListener(frm);ckb3.addItemListener(frm);frm.add(ckb1);frm.add(ckb2);frm.add(ckb3);frm.setVisible(true);}public void itemStateChanged(ItemEvent e){if(ckb1.getState()==true)frm.setBackground(Color.green);else if(ckb2.getState()==true)frm.setBackground(Color.blue);elsefrm.setBackground(Color.yellow);}}10.编写HTML文件:嵌入一个名为MyHtml.class地Applet字节码文件,其宽度为300,高度为200.<html><head><title>MyHtml</title></head><body> <hr><applet code=MyHtml.class width=300 height=200></applet></body></html>11. 编写一个Applet程序,把摄氏温度转化为华氏温度,公式:华氏=摄氏*9/5+32,包括一个标签(提示输入),两个文本框(一个用来输入数据,另一个输出结果). import java.applet.*;import java.awt.*;import java.awt.event.*;public class CharIn extends Applet{Label prompt; TextField tf1,tf2;public void init(){ prompt=new Label(“请输入摄氏温度:”);tf1=new TextField(15); tf2=new TextField(20);add(prompt); add(tf1); add(tf2);}public boolean action(Event e, Object o){double s=0,h;s=Double.valueOf(tf1.getText()).doubleValue();h=s*9/5+32;tf2.setText(“华氏温度为:”+h);}}12.编写小程序求1!+2!+...+20!地和并显示,要求用方法实现求阶乘.参考程序:public class FactSum{public static void main(String args[]){long sum=0;for(int i=1;i<=20;i++)sum+=factorial(i);System.out.println("阶乘和="+sum);}static long factorial(int k){long fact=1;for(int i=2;i<=k;i++)fact*=i;return fact;}}13. 设计一个表示用户地User类,类中地变量有用户名、口令(私有地)和记录用户个数地变量(静态地),定义类地3个构造方法(没有参数、有一个参数给用户名赋值、有两个参数给用户名和口令赋值)、获取和设置口令地方法、返回字符串表示地类信息地方法(包括用户名、口令).编写应用程序测试User类.参考程序:public class User{private String name, password;private static int number;User(){name = null;password = null;number++;}User(String n){name = n; password = null; number++;}User(String n, String ps){name = n; password = ps; number++;}public String getPassword(){return password;}public void setPassword(String ps){password = ps;}public void String() {System.out.println("用户名:"+ name +"口令:"+ password);}}public class Test{public static void main(String args[]){User usr = new User("aaaa", "4557156");usr.setPassword("agaga1");usr.String();}}14. 编写应用程序,定义一个5行3列地二维数组,给数组地每个元素赋10~100之间地随机值,显示二维数组每行地元素,并输出所有元素地和.参考程序:public class RandomArray{public static void main(String args[]){int a[][]=new int[5][3];for(int i=0;i<a.length;i++)for(int j=0;j<a[i].length;j++){a[i][j]=(int)(Math.random()*90+10);}int sum=0;for(int i=0;i<a.length;i++){System.out.print("第"+(i+1)+"行地所有元素为");for(int j=0;j<a[i].length;j++){system.out.print(a[i][j]+" ");sum+=a[i][j];}System.out.println();}}}版权申明本文部分内容,包括文字、图片、以及设计等在网上搜集整理.版权为个人所有This article includes some parts, including text, pictures, and design. Copyright is personal ownership.mLPVz。
Java程序设计第1-4章练习题参考答案完整版
一、选择题1.下面供选字符序列中,不属于...Java语言关键字的是( A ) A.goto B.null C.false D.native2.以下是关于Java语言关键字的叙述,其中正确的是( C )A.关键字可以用来描述类的成员类型,但是不能描述普通变量B.关键字由字母(包括英文字母、下划线字符、美元字符、文字字符)和数字组成C.关键字不可以用作变量、方法、类或标号的标识符D.break和main都是Java语言的关键字3.下述字符组合不能作为Java程序标识符的是(D)A.Aa12 B.XC.y D.5x4.在下述字符串中,不属于...Java语言关键字的是( C )A.float B.newC.java D.return5.下列字符组合不能作为Java整型常量的是( A )A.078B.0x3ACBC.5000D.0x3ABC6.设有如下程序:public class Test {public static void main(String[] args) {String foo=args[1];String bar=args[2];String baz=args[3];System.out.println("baz= "+baz);}}下述哪一行命令可以使得执行该程序的输出为baz= 2 ( C )A) java Test 2222 B) java Test 1 2 3 4C) java Test 4 2 4 2 D) java Test 4 3 2 17.在Java语言中,int类型数据的长度是( C )A.1个字节B.2个字节C.4个字节D.8个字节8. 用Java虚拟机执行类名为Hello的应用程序的正确命令是( D )。
A) java Hello.class B) Hello.class C) java Hello.java D) java Hello9.执行以下代码,输出结果是( B )int x=5,y=7,u=9,v=6;System.out.println(x>y ? x+2:u>v ? u-3:v+2);A.8B.6C.7D.true10.下列修饰符中与访问控制无关的是(C)。
解析java程序设计第四章课后答案
解析java程序设计第四章课后答案第4章习题解答1.类的继承的主要好处是什么?Java中支持类的多继承形式吗?继承是一种由已有的类创建新类的机制。
利用继承,我们可以先创建一个拥有共有属性的一般类,根据该一般类再创建具有特殊属性的新类,新类自动拥有一般类的属性和行为,并根据需要可以增加新的属性和行为,或者改变父类的行为。
类的继承的主要好处是代码复用。
Java不支持类的多继承形式。
2.解释一下方法重载和方法覆盖的概念,并对两者加以对比。
如果子类中定义方法所用的名称、返回类型和参数表和父类中方法所使用的完全一样,但具体实现不同,则称子类方法覆盖了父类中的方法。
在同一类中,如果方法名称相同,但参数表不同,则称为方法重载。
3.编写一个学生和教师的数据输入和显示程序。
学生数据有编号、姓名、班号和成绩,教师数据有编号、姓名、职称和部门。
要求将编号、姓名输入和显示设计成一个类Person,并作为学生类Student和教师类Teacher的父类。
import java.util.*;class Person {private String name;private int id;public void input(){Scanner sc=new Scanner(System.in); name=sc.nextLine();id=sc.nextInt();}public void display(){System.out.println(\} }class Student extends Person { private int classNo;private int score;public void input(){super.input();Scanner sc=new Scanner(System.in); classNo=sc.nextInt();score=sc.nextInt();}public void display(){super.display();System.out.println(\}public static void main(String[] args){Student s=new Student();s.input();s.display();} } 4.创建Animal(动物):Mouse,Dog等的一个继承分级结构。
《JAVA程序分析研究报告》习题集及参考答案IT文库
《JA V A程序设计》习题集及参考答案一、填空题1.Java是面向对象的解释型的高级编程语言,其程序源代码的扩展名为.java生成的字节码文件名的扩展名为.class,Java解释器把各种平台间的差异隐藏起来,这种由解释器包裹起来的完整的软硬件平台称为Java 虚拟机。
2.Java Application 是独立、完整的程序,在命令行调用独立的解释器软件(java.exe)即可运行,其程序主类必须有一个main()方法,完整的方法头为public static void main(String aegs[]) 。
3.把方法看作是数据的特性,而不把数据和方法分开,JA V A正是体现了这种建立面向对象系统过程中重要步骤的思想.。
4.建立类类型的变量(引用)后,系统只分配引用空间,程序员要调用new来创建对象实例,然后才分配相应的存储空间。
5.如果需要在同一类中书写多个方法,让它们对不同的变量进行同样的操作,就需要重载方法名。
如果子类中定义方法所用的名字、返回类型和参数表和父类中方法使用的完全一样,称子类方法覆盖了父类中的方法。
覆盖的同名方法中,子类方法不能比父类方法的访问权限更严格。
6.容器中组件的位置由容器的布局管理器决定,容器不仅可以容纳组件,还可以容纳其它容器这一点非常重要,由此可以设计出复杂的图形用户界面布局。
7.Java抽象窗口工具中提供了多种容器,其中最重要的两种是框架和面板。
8.JDK1.1引入了委托模型处理机制,组件必须注册一个事件处理程序,事件对象只传递给已经注册的监听程序,每种事件都有一个对应的监听程序类以实现相应的监听程序接口,并定义了事件对象的接收和处理方法。
9.异常处理的重要性在于,程序不但要发现异常,还要捕获异常并编写代码来处理10.类是同种对象集合的抽象,而属于类的某一个对象则被称为是类的一个实例,对象是具有状态、行为、标志三种属性的计算机软件结构。
11.用户自己定义的Applet子类是Java Applet的标志。
Java程序设计课后练习答案
J a v a程序设计课后练习答案Last updated on the afternoon of January 3, 2021《J a v a程序设计》课后练习答案第一章Java概述一、选择题1.(A)是在Dos命令提示符下编译Java程序的命令,(B)是运行Java程序的命令。
A.javacB.javaC.javadocD.javaw2.(D)不是Java程序中有效的注释符号。
ssB. .jarC. .javD. .java二、简答题1、Java的跨平台的含义是什么为什么Java可以跨平台2、Java语言的一个非常重要的特点就是平台无关性。
它是指用Java编写的应用程序编译后不用修改就可在不同的操作系统平台上运行。
Java之所以能平台无关,主要是依靠Java 虚拟机(JVM)来实现的。
JVM是一种抽象机器,它附着在具体操作系统之上,本身具有一套虚机器指令,并有自己的栈、寄存器组等。
Java编程人员在编写完Java程序后,Java编译器将Java源代码文件编译后生成字节码文件(一种与操作系统无关的二进制文件)。
字节码文件通过Java虚拟机(JVM)里的类加载器加载后,经过字节码校验,由解释器解释成当前电脑的操作系统能够识别的目标代码并最终运行。
以下图展示了Java程序从编译到最后运行的完整过程。
3、简述Java语言的特点Java具有以下特点:1)、简单性Java语言的语法规则和C语言非常相似,只有很少一部分不同于C语言,并且Java还舍弃了C语言中复杂的数据类型(如:指针和结构体),因此很容易入门和掌握。
2)、可靠性和安全性Java从源代码到最终运行经历了一次编译和一次解释,每次都有进行检查,比其它只进行一次编译检查的编程语言具有更高的可靠性和安全性。
3)、面向对象Java是一种完全面向的编程语言,因此它具有面向对象编程语言都拥有的封装、继承和多态三大特点。
4)、平台无关和解释执行Java语言的一个非常重要的特点就是平台无关性。
java第4章习题答案
2. 数 3. 4.
一个整型数组可以容纳的元素类型有哪些。 答:整型和字符型,byte 型 若有一个声明为“int[] a=new int[10]”的整型数组,可以引用的最小下标和 最大下标是多少? 答:最大下标为 0,最小下标为 9 若有一个声明为“int[] a=new int[10]”的整型数组,其每个元素的初始值是 多少? 答:初始值为 0 以下能对二维数组进行正确初始化的语句是( BC ) 。 A.int[][] a=new int[2][]{{1,2},{3,4}}; B. int[][] a=new int[][]{{1,2},{3,4}}; C. int[][ ] a={{1,2},{3,4}}; D. int[2][2] a={{1,2}下面程序的运行结果 class Happy { public static void main(String args[]) { int index=1; int a[] =new int[3]; int bas =a[index]; int baz =bas + index System.out.println( a[baz] ); } } 答:0
第四章 答案
1. 一个字符型数组,其有 5 个元素,初始值分别为'a','b','c','d','e',写出 可能的声明及初始化语句。 答 :(1)char[] ch={'a','b','c','d','e'}; (2) char[] ch=new char[5]; ch[0]='a'; ch[1]='b'; ch[2]='c'; ch[3]='d'; ch[4]='e'; (3) char[] ch=new char[]{'a','b','c','d','e'}; 获得一个数组可以容纳的元素个数的方法是什么? 答:利用数组型变量的一个整型属性 length,其表示数组可以容纳的元素个
JAVA各章习题及答案全解
第 1 章Java 入门一、选择题1 •下列选项中,不属于Java语言特点的一项是 (C)。
内容,这类程序的框架也都是固定的,而绘制图形在窗口中的位置则需要由用户确定。
)安全性 )分布式(B( A5 • Java语言属于(B )种语言?( C)编译执行(D)面向对象(【解析】Java程序采用解释执行的方法。
在系统编译A )面向机器的语言(B )面向对象的语言(C)面向过程的语言 (Java运行Java程序时,编译器将Java程序转化为字节码,D)面向操作系统的语言【解析】Java 语言是一种纯面向对象的语言。
在运行时,解释器将编译得到的字节码进行解释执行。
6 •下列关于Application和Java2•在语言中,(C )是最基本的元素?Applet程序的说法中不正确的一项是( B (B)包)。
A ()方法(A) Application 使用解释器(C)对象(D)接口java.exe(B) Application。
不使用独立的解释器构成【解析】Java程序的基本元素类(抽象的对象) (3个类和10个方法的Java源文件后,C) Applet在浏览器中运行编译一个定义了3. ( D) Applet 会产生( D )个字节码文件?扩展名是( D )?必须继承Java 的Applet 类【解析】Application程序包含个字节码文件,扩展名为( A) 13.class main()方法,它是一种独立执行的程序,因此必须使用独立的解释器解释执行。
B() 1 个字节码文件,扩展名为.class7•下列选项中,不属于3 (C)个字节码文件,扩展名为.java Java核心包的一项是( A )。
(A 个字节码文件,扩展名为.class ) javax.swing (B) java.io 3 (D) (源文件中的每一个类编译后都会生成一个字【解析】C) java.utile (D) ng【解析】凡是以节码文件,字节码文件的扩展名是.class o java开头的包都是Java核心包,以javax开头的包则属于Java应用程序时,需要用户考虑问题是(.在创建4Applet扩展包。
Java(1-4)复习题
《使用Java理解程序逻辑》1-4章阶段测试一课后选择题二、选择题1、下列语句中,( BD )正确完成整形变量的声明和赋值。
A). int count,count=0;B). int count=0;C). count=0;D). int count1=0,count2=1;2、在JAVA中,用于向控制台打印输出信息的语句是(A)。
A). System.out.println()B). System.println()C). Out.println()D). Print.println()3、给定某Java程序的main方法如下所示,该程序的运行结果是( A)。
Public static void main(String[] args){int i=0;System.out.println(i );} (选择一项)AA). 输出0B). 输出1C). 编译错误D). 运行时出现异常4、在Java 中,下列代码的远行结果是(D )。
public static void main(String[] args) {int a=1,b=2,c=3;if(a<0)if(b<0)c=10;c=20;System.out.println(c);}A). 输出:10B). 输出:20C). 输出:3D). 编译报错5、在Java中,源文件Test.java中包括如下代码段,则程序编译运行结果是(b)。
public class Test{public static void main(String[]args){system.out.print(“Hello!”);}}A). a) 输出:Hello!B). b) 编译出错,提示“无法解析system”C). c) 运行正常,但没有输出任何内容D). d) 运行时出现异常6、在Java中,Scanner类提供从控制台获取键盘输入的功能,下列语句( b)能够正确实例化Scanner类的对象,用于获得键盘输入的数据。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、选择题1.下面供选字符序列中,不属于...Java语言关键字的是( A ) A.goto B.null C.false D.native2.以下是关于Java语言关键字的叙述,其中正确的是( C )A.关键字可以用来描述类的成员类型,但是不能描述普通变量B.关键字由字母(包括英文字母、下划线字符、美元字符、文字字符)和数字组成C.关键字不可以用作变量、方法、类或标号的标识符D.break和main都是Java语言的关键字3.下述字符组合不能作为Java程序标识符的是(D)A.Aa12 B.XC.y D.5x4.在下述字符串中,不属于...Java语言关键字的是( C )A.float B.newC.java D.return5.下列字符组合不能作为Java整型常量的是( A )A.078B.0x3ACBC.5000D.0x3ABC6.设有如下程序:public class Test {public static void main(String[] args) {String foo=args[1];String bar=args[2];String baz=args[3];System.out.println("baz= "+baz);}}下述哪一行命令可以使得执行该程序的输出为baz= 2 ( C )A) java Test 2222 B) java Test 1 2 3 4C) java Test 4 2 4 2 D) java Test 4 3 2 17.在Java语言中,int类型数据的长度是( C )A.1个字节B.2个字节C.4个字节D.8个字节8. 用Java虚拟机执行类名为Hello的应用程序的正确命令是( D )。
A) java Hello.class B) Hello.class C) java Hello.java D) java Hello9.执行以下代码,输出结果是( B )int x=5,y=7,u=9,v=6;System.out.println(x>y ? x+2:u>v ? u-3:v+2);A.8B.6C.7D.true10.下列修饰符中与访问控制无关的是(C)。
A) public B) protected C) final D) private11.以下程序代码的输出结果是( A )int x=73;System.out.println(x>>1);A.36 B.36.5C.37 D.true12.应用程序的main方法中有以下语句,则输出的结果是(B)。
String s="12345#67890#123#fgh";int m=s.indexOf("#");String s2=s.substring(m+1);System.out.println(s2);A) 12345 B) 67890#123#fgh C) 123 D) fgh 13.Java语言中,在类定义时用final关键字修饰,是指这个类( A ) A.不能被继承B.在子类的方法中不能被调用C.能被别的程序自由调用D.不能被子类的方法覆盖14.以下是关于字符串运算的代码,执行该代码段的输出结果是( B ) String s="0123456789″,sl,s2;sl=s.substring(2);s2=s.substring(2,5);System.out.println(s1+s2);A.0122345 B.234567892345C.012234 D.2345678923415.参照以下Java代码,以下四个叙述中最确切的是(B)class A{int x; static int y;void fac(String s){Syatem. out. println("字符串:"+s);}}A.x、y和s都是成员变量B.x是实例变量、y是类变量、s是局部变量C.x和y是实例变量、s是参数D.x、y和s都是实例变量16.关于对象成员占用内存的说法哪个正确?( B )A) 同一个类的对象共用同一段内存B) 同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间C) 对象的方法不占用内存D) 以上都不对17.关于方法main()的说法哪个正确?( C )A) 方法main()只能放在公共类中B) main()的头定义可以根据情况任意更改C) 一个类中可以没有main()方法D) 所有对象的创建都必须放在main()方法中18.以下程序代码的输出结果是( B )int x = 10;while (x > 7){ System.out.print("*"); x--;}A.**B.***C.*D.****19.设类U声明,及对象u和v的定义如下:class U{int x, int y;U(int a, int b){x= a; y = b;}void copy(U a){ x = a.x; y = a.y;}}U u = new U(1, 2), v = new U(2, 3);在以下供选择的代码中,可能引起系统回收内存的是( B )A.u.x=v.y;u.y=v.x;B.u=v;C.u.copy(v);D.v.copy(u);20.设有以下代码:String s l="123";String s2="123";String s3=new String("123");则表达式s1==s2和s1==s3的值分别是( C )A.true,trueB.false,falseC.true,falseD.false,true21.在以下供选择的概念中,不属于...面向对象语言概念的是( B ) A.消息B.模块C.继承D.多态性22.应用程序的main方法中有以下语句,则执行后输出的结果是( D )。
int[] x={125,21,5,168,98};int max=x[0];for(int i=1;i<x.length;i++){if(x[i]> max)max =x[i];}System.out.println(max);A) 125 B) 5 C) 21 D) 16823.在下述Java语言语句中,错误..的创建数组的方法是( A)A.int intArray [ ];intArray=new int[5];B.int intArray [ ]=new int[5];C.int [ ] intArray ={1,2,3,4,5};D.int intArray [5]={1,2,3,4.5};24.应用程序的main方法中有以下语句,则输出的结果是(A)。
String s1="0.5", s2="12";double x=Double.parseDouble(s1);int y=Integer.parseInt(s2);System.out.println(x+y);A) 12.5 B) 0.512 C) “0.512”D) “12.5”25.构造函数何时被调用?( B )A) 类定义时B) 创建对象时C) 使用对象的方法时D) 使用对象的属性时26.关于继承的说法正确的是:(D)A) 子类将继承父类所有的属性和方法。
B) 子类只继承父类的方法,而不继承属性C) 子类只继承父类public方法和属性D) 子类将继承父类的非私有属性和方法。
27.关于接口哪个正确?( D)A) 一个类只能实现一个接口B) 接口间不能有继承关系C) 接口和抽象类是同一回事D) 实现一个接口的非抽象类必须实现接口的所有方法28.以下关于接口的叙述中,正确的是( D )A.所有的接口都是公共接口,可被所有的类和接口使用B.一个类通过使用关键字interface声明自己使用一个或多个接口C.接口中所有的变量都默认为public abstract属性D.接口体中不提供方法的实现29.以下代码段的输出结果是( A )String s="JavaWorld";System.out.print(s.indexOf("a",4));A.-1B.OC.1D.430.Java语言中,只限子类或者同一包中的类的方法能访问的访问权限是( D)A.publicB.privateC.protectedD.<无修饰>31.设有数组定义int[][] x={{1,2},{3,4,5},{6},{}};,则x.length 的值为( B )A.3B.4C.6D.732.若需要定义一个类变量或类方法,应使用哪种修饰符?( A)A)static B)package C)private D)public 33.若有下面程序for(int k=1;k<=5;k++){if(k>4) break;System.out.print (k);}请问最后的输出结果是(A )A)1234 B)1 C)2 D)1234534、在Java中负责对字节代码解释执行的是(B)A)垃圾回收器B)虚拟机C)编译器D)多线程机制35、java源程序编译生成的字节码文件不是直接运行在操作系统平台上的,而是在(B)上运行的。
A)网页 B)java虚拟机 C)java编译器 Djava编辑器36、下面叙述正确的是(A)A)Java语言的标识符是区分大小写的B)源文件名和public类名可以不相同C)源文件名其扩展名为.jarD)源文件中其public类的数目不限37、java语言是一种(D)A)机器语言 B)汇编语言 C)面向过程语言 D)面向对象语言38、请问下面哪一个表达式是求x、y、z三个整型变量中的最大值的表达式(A)A)(x>y?x:y)>z?(x>y?x:y):zB)(x>y?x:y)>z ?x:zC)(x>y)&&(x>z)D)x>(y<z?y:z)?x:(y<z?y:z)39、下面属于合法标识符的是(A)A)_catB)5fileC)staticD)abc-340、下列哪个选项不是Java语言的注释符号(D)A、//B、/* */C、/** */D、!41、类Example定义如下:1.public class Example{2.public float aMethod(float a,float b){ }3.4.}将以下哪种方法插入行3是不合法的。