第四章 Java章节习题

合集下载

04_JAVA练习题第四章-面向对象概念

04_JAVA练习题第四章-面向对象概念

04_JAVA练习题第四章-面向对象概念[单选题]1.下列哪种类成员修饰符修饰的变量只能在本类中被访问?()A)protectedB)publicC)defaultD)private答案:D解析: 【解析】只有私有访问权限修饰符才能限制变量只能在本类中被访问2.在Java 语言中,哪一个包中的类是自动导入的?()A)ngB)java.awtC)java.ioD)java.applet答案:A解析: 【解析】只有ng 包中的类能够被自动导入。

3.给出下面的程序代码:public class X4_1_3{ private float a;public static void m ( ){ }}如何使成员变量a 被方法m( )访问()A)将private float a 改为protected float aB)将private float a 改为public float aC)将private float a 改为static float aD)将private float a 改为float a答案:C解析: 【解析】static 类型的方法只能访问static 类型的数据成员。

4.有一个类B,下面为其构造方法的声明,正确的是()。

A)void B(int x) {}B)B(int x) {}C)b(int x) {}D)void b(int x) {}答案:B解析: 【解析】构造方法没有类型,且方法名与类名相同。

5.下面关于类的说法,不正确的是()。

A)类是同种对象的集合和抽象B)类属于Java 语言中的复合数据类型C)类就是对象D)对象是Java 语言中的基本结构单位答案:C解析: 【解析】类是对象的抽象,对象是类的实例,因此类和对象是有区别的。

6.下面关于方法的说法,不正确的是()。

A)Java 中的构造方法名必须和类名相同B)方法体是对方法的实现,包括变量声明和合法语句C)如果一个类定义了构造方法,也可以用该类的默认构造方法D)类的私有方法不能被其他类直接访问答案:C解析: 【解析】类中一旦用户定义了构造方法,该类默认的构造方法就不存在了,除非用户再自定义该类的默认构造方法。

JAVA第四章练习题

JAVA第四章练习题

第四章 习题课

1.设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 则执行以 下几个语句后的输出结果是 。
int s = 0 ; for (int i = 0 ; i < MyIntArray.length ; i + + ) if ( i % 2 = = 1 ) s += MyIntArray[i] ; System.out.println(s); 答案为
12、关于下面的程序Test.java说法正确的是
13、应用程序的main方法中有以下语句, 则输出的结果是 ( )。 int b[][]={{1, 1, 1}, {2,2}, {3}}; int sum=0; for(int i=0; i<b.length; i++) { for(int j=0; j<b[i].length; j++) { sum+=b[i][j]; 答案为 A } } System.out.println("sum="+sum); A) 10 B)6 C) 9 D) 13


答案为 A

9、应用程序的main方法中有以下语句,则
输出的结果是 ( )。 int b[][]={{1}, {2,2}, {2,2,2}}; int sum=0; for(int i=0;i<b.length;i++) { for(int j=0;j<b[i].length;j++) { sum*=b[i][j]; } 答案为 A } System.out.println("sum="+sum); A) 32 B)11 C) 2 D) 3

JAVA第四章课后习题解答

JAVA第四章课后习题解答
public Test4_8(){ super("简单的四则运算器"); setSize(300,400); setVisible(true); setLayout(new GridLayout(3,1));
txtFl1=new TextField(5); txtFl2=new TextField(5); txtFl3=new TextField(5); btn1=new Button("+"); btn2=new Button("-"); btn3=new Button("*"); btn4=new Button("÷");
public class Test4_9 extends Frame implements ActionListener{ Button btn; public Test4_9(){ super("弹出窗口练习"); setSize(300,200);
5
setVisible(true); setLayout(new BorderLayout());
TextField txtFl1,txtFl2,txtFl3;
2
Button btn; public Test4_6(){
super("简单加法运算器"); setSize(300,200); setVisible(true); setLayout(new FlowLayout());
txtFl1=new TextField(5); txtFl2=new TextField(5); txtFl3=new TextField(10); btn=new Button("=");

Java程序设计 第4章习题参考答案[2页]

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练习题一到四章

第一章: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面向对象程序设计第四章习题

java面向对象程序设计第四章习题

第四章 类和对象1第四章 类和对象 [习题]1.类及类成员的访问控制符有哪些?2.为什么说构造函数是一种特殊的方法?特殊在哪里?构造函数什么时候执行?被谁调用?3.关键字static 可以修饰哪些类的组成部分?4.静态属性有什么特点?类对象可以访问或修改静态属性吗?5.同名的不同方法共存的情况称为什么?如何区分这些同名方法?6.什么是包?如何创建包?为什么要使用包?包物理地对应什么?7.试写出一个语句创建一个名为MyPackage 的包,这个语句应该放在程序的什么位置?8.如何引用整个包?如何引用包中的一个类?试写出引用MyPackage 中所有类的语句和引用MyPackage 包中的一个类MyClass1。

9.阅读下面的程序,说明它们的输出。

public class UseRef{public static void main(String args[]){MyClass1 myobj,myref;myobj=new MyClass1(-1);myref=myobj;System.out.println("the original data is:"+myobj.getData());myref.setData(10);System.out.println("now the data is:"+myobj.getData());}}class MyClass1{int data;MyClass1(int d){data=d;}int getData(){return data;2 }void setData(int d){data=d;}}10.编写一个类实现秒表的功能。

要求至少实现开始计时、停止计时、分针秒针归零、获得分针示数、获得秒针示数、获得总时间的毫秒数等功能。

11.编写一个类实现复数的运算。

要求至少实现复数相加、复数相减、复数相乘等功能。

12.编程创建一个Box类,在其中定义三个变量表示一个立方体的长、宽和高,定义一个构造方法对这三个变量进行初始化,然后定义一个方法求立方体的体积。

第四章 Java章节习题

第四章   Java章节习题

1.分别编写两个方法,一个方法的功能是求一个double型数值的向右取整,另一个方法求double型数值的向左取整。

数d的向右取整是大于等于d的最小整数,d的向左取整是小于等于d的最大整数。

例如:5.3的向右取整是6而向左取整是5.答:public class One{static int right(double x){if(x!=5)x=x+1;return (int)x;}static int left(double x){return (int)x;}public static void main(String args[]){System.out.println("5.3向左取整为:"+left(5.3));System.out.println("5.3向右取整为:"+right(5.3));}}程序运行结果为:2.写一个方法计算一个整数各位数字的和。

使用下述的方法说明:public static int sumDigits(long n)例如:sumDigits(276)返回2+7+6=15 。

提示:用求余运算符%分解数字,用除号/分离位数。

例如334%10=4而334/10=33.用循环反复分解和分离每位数字,直到所有的位数都被分解。

答:public class Two{public static int sumDigits(long n){long sum=0,t;while(n!=0)47{t=n%10;n=n/10;sum+=t;}return (int)sum;}public static void main(String args[]){System.out.println("334各个位数字之和为:"+sumDigits(334));}}程序运行结果为:3. 编写程序,用Math类中的sqrt方法打印下表:Number SquareRoot ....................................0 0.00002 1.41424 2.00006 2.44958 2.828410 3.162312 3.464114 3.741716 4.000018 4.242620 4.4721答:public class Three{public static void main(String args[]){System.out.println("Number SquareRoot");System.out.println("..................");for(int i=0;i<=20;)4748{System.out.printf("%d\t%.4f\n",i,Math.sqrt(i));i=i+2;}}}程序运行结果为:4. 请定义一个名为Rectangle的矩形类。

java试卷(第四章)

java试卷(第四章)

java试卷(第四章)(⼀)选择题1.假设⽅法没有任何返回值,下⾯哪个关键字可以⽤作此函数的返回类型?()A.v oidB.i ntC.d oubleD.p ublic2.⽅法包含哪些特征?()A.⽅法名B.⽅法名和参数列表C.返回类型、⽅法名和参数列表D.参数列表3.所⽤的java应⽤程序都要有⼀个()⽅法?A.p ublic static Main(String[] args)B.p ublic static Main(String args[])C.p ublic static void main(String[] args)D.p ublic void main(String[] args)4.⽅法的参数总是出现在()A.⼤括号B.圆括号C.花括号D.引号5.每当调⽤⼀个⽅法时,系统将参数、局部变量和系统寄存器存储在⼀个内存区域中,这个内存区域称为()A.堆B.存储器C.栈D.数组6.在调⽤参数⽅法时,实参的值赋给形参,这被称为()A.⽅法调⽤B.值传递C.参数传递D.参数名传递7.下⾯⽅法打印message:System.out.print(message);n--;}}那么nPrint(”a”,4)会输出什么()A.a aaaaB.a aaaC.a aD.调⽤⽆效8.下⾯⽅法打印messagestatic void nPrint(String message, int n) { while (n > 0) {System.out.print(message);n--;}}如果int k = 2;nPrint(“A message”,k);程序运⾏后k的结果是()A.0B.1C.2D.39.分析下⾯代码public class Test {public static void main(String[] args) { System.out.println(xMethod(5, 500L));}public static int xMethod(int n, long l) { System.out.println("int, long");return n;}public static long xMethod(long n, long l) { System.out.println("long, long");}运⾏结果是()A.程序显⽰的是int,long下⼀⾏5B.程序显⽰的是long,long下⼀⾏5C.程序正常运⾏,但是运⾏结果不是A和B中的结果D.程序不能正常运⾏,因为没有匹配的参数列表10.分析下⾯代码:class Test {public static void main(String[] args) {System.out.println(xmethod(5));}public static int xmethod(int n, long t) {System.out.println("int");return n;}public static long xmethod(long n) {System.out.println("long");return n;}}运⾏结果是()A.i nt 下⼀⾏5B.l ong下⼀⾏5C.程序正常运⾏,但是运⾏结果不是A和B中的结果D.程序不能正常运⾏,因为没有匹配的参数列表11.分析下⾯代码:public class Test {public static void main(String[] args) {System.out.println(max(1, 2));}public static double max(int num1, double num2) {System.out.println("max(int, double) is invoked");if (num1 > num2)return num1;elsepublic static double max(double num1, int num2) {System.out.println("max(double, int) is invoked");if (num1 > num2)return num1;elsereturn num2;}}运⾏结果是:()A.程序不能编译,因为不能在返回类型为⾮void的⽅法中有输出语句。

JAVA第四章习题

JAVA第四章习题

第四章Java Appplet及其应用一、选择题1、Applet类是属于 B 包的。

A.java.awt B.java.applet C.java.io D.ng2、下面关于Applet程序的描述中,错误的是 B 。

A.Applet程序的主类必须是Applet类的子类B.Applet程序的主类中应有一个main()方法C.Applet不是完整的独立程序D.Applet的字节码文件必须嵌套在一个HTML文件中3、下列关于Applet程序的描述中,错误的是 D 。

A.将编辑好的Java源文件,使用javac命令生成字节码文件B.将字节码文件嵌入HTML文件,并存放在一个WWW服务器中C.使用浏览器解释HTML文件中的标记D.使用编译器直接执行嵌套在HTML文件中的字节码文件4、在Applet类的主要方法中,用来实现初始化操作的是 A 。

A.init () B.stop( ) C.start( ) D.paint( )5、下列关于HTML文件的描述中,错误的是 C 。

A.HTML文件是使用一种超文本标记语言书写的文件B.HTML文件中使用的标记通常是用一对尖括号括起来的,两个标记之间是正文内容C.HTML文件中没有单独出现的标记D.HTML中不区分大小写字母6、下列关于向Applet程序传递参数的描述中,错误的是 A 。

A.Applet程序可以通过命令行获取外部参数B.Applet程序可以通过HTML文件获取外部参数C.使用Applet标记中的PARAM标志来实现D.Applet程序中使用getParameter( )方法读取参数值7、下列用来获取当前颜色的方法是 B 。

A.getColor( ) B.setColor( ) C.getRed( ) D.Color( ) 8、下列各种绘制矩形的方法中,绘制实心矩形的方法是 A 。

A.fillRect( ) B.drawRect( ) C.clearRect( ) D.drawRoundRect( ) 9、下列演示图像的描述中,错误的是 D 。

Java第四章题

Java第四章题

1、已知类的定义如下public class test_3{int x ;int y ;test_3(int a,int b){x=a;y=b;}test_3(){x=-1;y=-1;}int get_x(){return x++;}int get_y(){return y--;}如果用下面三种不同的方法加载类,写出要求的结果:(1)用test_3 a1=new test_3()后;a1.x的内容为_____ ,a1.y的内容为______。

(2)用test_3 a1=new test_3(-2,5)后;a1.x的内容为_____ ,a1.y的内容为______。

(3)用test_3 a1=new test_3(10)后;其结果是__________。

2、设int x=1,float y=2,则表达式x / y的值是( )A、0B、1C、2D、以上都不是3、以下语句有语法错的是( )A、int x=1;y=2;z=3B、for (int x=10,y=0;x>0;x++);C、while (x>5);D、for(;;);4、void 的含义( )A、方法体为空B、定义的方法没有形参C、定义的方法没有返回值D、方法的返回值不能参加算术运算5、以下有关类定义的说法正确的是( )A、一个类可以有成员,也可以没有成员B、类的成员至少有一个属性和一个方法C、类的静态属性同全局变量的概念完全一样,只是表达形式不同D、类的方法在实例化时不占用内存6、以下有关构造函数的说法,正确的是( )A、一个类的构造函数可以有多个B、构造函数在类定义时被调用C、构造函数只能由对象中的其它方法调用。

D、构造函数可以和类同名,也可以和类名不同7、以下有关类的继承的说明中,正确的是( )A、子类能直接继承父类所有的非私有属性,也可通过接口继承父类的私有属性B、子类只能继承父类的方法,不能继承父类的属性C、子类只能继承父类的非私有属性,不能继承父类的方法D、子类不能继承父类的私有属性8、以下有关类的构造函数继承的说明,正确的是( )A、子类继承父类的构造函数,但不能自己定义B、子类可定义自己的构造函数,但受父类定义的构造函数的限制C、子类和父类均可独自定义自己的构造函数,但执行时的顺序有规定D、如父类定义了构造函数,则子类只能继承父类的构造函数,不能自己定义9、this 和super的使用中,正确的是( )A、都是指一个内存地址B、可以在同一个方法定义中出现C、意义相同D、以上都不10、分析以下程序,下面(AC)方法是对setVar方法的重载。

JAVA_开发实战经典_第四章课后习题答案_完整版

JAVA_开发实战经典_第四章课后习题答案_完整版

int value[] = new int[a.length+val.length]; System.arraycopy(a,0,value,0,a.length); System.arraycopy(val,0 , value, a.length, val.length); return value; } }
if(c == temp[i]){
flag = true; } } if(flag){ System.out.println("YES,此数组中存在元素"+c); }else{ System.out.println("NO,此数组中不存在元素"+c); } } }
第六题 public class Four06 { public static void main(String[]args){
max=a[i]; maxFoot=i; } } int val = a[0]; a[0] = a[maxFoot]; a[maxFoot] = val; System.out.println(a[0]); } }
第十题 public class Four10 {
public static void main(String[] args){ int temp[]= {1,2,3,4,5,6,7,8,9,10}; java.util.Arrays.sort(temp); print(temp); temp = inc(temp,13,12,34,5,6,7); java.util.Arrays.sort(temp); print(temp);
n8++; break; } case 9:{ n9++; break; } case 0:{ n0++; break; } } } System.out.println("0---->9的个数分别为:"+n0+"、"+n1+"、"+ n2+"、"+n3+"、"+n4+"、"+n5+"、"+n6+"、"+n7+ "、"+n8+"、"+n9); } }

java题库第四章

java题库第四章

第四章4.3 习题解答1.问答题略.2.选择题4-1 Applet类是属于(B)包的。

A.java.awtB.java.appletC.java.iong4-2 下列关于Applet程序的描述中,错误的是(B)。

A.Applet程序的主类必须是Applet类的子类B.Applet程序的主类中应该有一个main()方法C.Applet不是完整的独立程序D.Acm的字节码文件必须嵌套在一个HTML文件中4-3 下列关于Applet程序的描述中,错误的是(D)。

A.将编辑好的Java源文件,使用javac命令生成字节码文件B.讲字节码文件嵌入HTML文件,并存放在一个WWW服务器中C.使用浏览器解释HTML文件中的标记D.使用编译器直接执行嵌套在HTML文件中的字节码文件4-4 在Applet类的主要方法中,用来实现初始化操作的是(A)。

A.init() B.stop() C.start() D.paint()4-5 下列关于HTML文件的描述,错误的是(C)。

A.HTML文件是使用一种超文本标记语言(HTML)书写的文件B.HTML文件中使用的标记通常是用一对尖括号括起来的,两个标记之间是正文内容C.HTML文件中没有单独出现的标记D.HTML中不区分大小写字母4-6 下列关于向Applet程序传递参数的描述中,错误的是(A)。

A.Applet程序可以通过命令获得外部参数B.Applet程序可以通过HTML文件获取外部参数C.使用Applet编辑的PARAM标记来实现D.Applet程序中使用getParameter()方法读取参数值4-7 下列关于字体的描述中,错误的是(C)。

A.Font类型提供了创建字体对象的方法B.字体风格(字型)使用了3个静态常量表示C.表示字型的字体风格只能单独使用,不可以组合D.字号表示字的大小,用点表示,一个点为1/72英寸4-8 下列用来获取当前颜色的方法是(B)。

JAVA练习题(第4章)

JAVA练习题(第4章)

12、在Java中,所有类的根类是( )。 A.ng.Object B.ng.Class 【答案】: Ajava.awt.Frame C.java.applet.Applet D. 13、int型public成员变量MAX_LENGTH,该 值保持为常数100,则定义这个变量的语句 是( )。 A.public int MAX_LENGTH=100 B.final int MAX_LENGTH=100 C.public const int MAX_LENGTH=100 D.public final int MAX_LENGTH=100
10、覆盖与重载的关系是 ( ) A、覆盖只有发生在父类与子类之间,而重载 可以发生在同一个类中 B.覆盖方法可以不同名,而重载方法必须同 名 C.final修饰的方法可以被覆盖,但不能被重 载 D.覆盖与重载是同一回事
【答案】:A
11、给定java程序,如下:编译运行Test.java,结 果是( )。 public class Test{ private static final int counter=10; public static void main(String[] args) { System.out.println(++counter) ; } } A、10 B、11 C、编译错误 D、运行时出现异常 【答案】:C
18、下列说法正确的是( )。 A、final 可修饰类、属性、方法 B、abstract可修饰类、属性、方法 【答案】:A C、定义抽象方法需有方法的返回类型、名称、参 数列表和方法体 D、用final修饰的变量,在程序中可对这个变量的 值进行更改 19、在Java中,所有类的根类是( )。 A、ng.Object B、ng.Class C、java.applet.Apple D、java.awt.Frame 【答案】:A

java作业(di4章课后)

java作业(di4章课后)

Java作业,第四章课后习题
姓名:李雪松
1.举例说明类和对象的关系。

类的概念:类是具有相同属性和服务的一组对象的集合。

对象的概念:对象是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位。

举例:比如说,一个人就是一对象,你怎么把一个你看好的人推荐给你们领导呢?当然是越详细越好了:首先,你会介绍这个人姓名、性别、年龄、身高、体重、电话、家庭住址等等。

比如这个人可以开车,会说英语,可以使用电脑等等
2.定义一个描述电话的类,至少描述电话类的两种属性和一种功能
4.什么是方法的重载,编写一个类,定义3个重载的方法,并编写该类的测试程序。

方法的重载就是,方法名称相同,参数的类型和个数不同,
5.举例说明类方法和实例方法以及类变量和实例变量的区别,。

java语言程序设计第4章-习题参考答案

java语言程序设计第4章-习题参考答案

第4章习题解答1.声明一个数组,保存一个学生的数学、语文、英语、物理、化学等课程的成绩,编写一个程序,计算5门课程的平均成绩,精确到0.1分,成绩值从键盘录入。

import java.util.Scanner;public class XT_1_score {public static void main(String[] args) {// TODO Auto-generated method stubdouble score[] = new double[5];System.out.println("请分别输入数学、语文、英语、物理、化学的成绩(数字之间用空格格开):");double sum = 0, average = 0;Scanner in = new Scanner(System.in);int i;for (i = 0; i < 5; i++)score[i] = in.nextDouble();for (i = 0; i < 5; i++)sum += score[i];average = sum / 5;System.out.println("平均成绩为:" + String.format("%.1f", average));}2.编程实现统计50名学生的百分制成绩中各分数段的学生人数,即:分别统计出100分、90-99分、80-89分、70-79分、60-69分、不及格的学生人数。

import java.util.Scanner;public class XT_2_score_sore {public static void main(String[] args) {// TODO Auto-generated method stubdouble score[] = new double[50];int a = 0, b = 0, c = 0, d = 0, e = 0, f = 0, i;System.out.println("请依次输入50名学生的成绩(用空格隔开):");Scanner br = new Scanner(System.in);for (i = 0; i < 50; i++)score[i] = br.nextDouble();for (i = 0; i < 50; i++) {if (score[i] == 100)a++;if (score[i] >= 90 && score[i] <= 99)b++;if (score[i] >= 80 && score[i] <= 89)c++;if (score[i] >= 70 && score[i] <= 79)d++;if (score[i] >= 60 && score[i] <= 69)e++;if (score[i] < 60)f++;}System.out.println("成绩为100分的个数:" + a);System.out.println("成绩为90-99分的个数:" + b);System.out.println("成绩为80-89分的个数:" + c);System.out.println("成绩为70-79分的个数:" + d);System.out.println("成绩为60-69分的个数:" + e);System.out.println("成绩为不及格的个数:" + f);}}3.编写一个程序,实现打印输出字符串数组中最大值和最小值。

《Java程序设计》第04章在线测试

《Java程序设计》第04章在线测试

《Java程序设计》第04章在线测试A BC DA BC DA BC DA BC DA BC D2、关于BufferedReader类的readLine()方法,以下说法正确的是()。

A、方法readLine()每次读取一行数据。

B、方法readLine()每次读取一个字节。

C、该方法可能抛出IOException异常,调用该方法时通常应将它放到try块中,并通过catch块处理异常。

D、如果读到流的末尾,该方法返回的结果为null。

3、下列是 InputStream 子类的是()。

A、文件输入流 FileInputStreamB、对象输入流 ObjectInputStreamC、字符输入流 CharInputStreamD、压缩文件输入流 ZipInputStream4、对文件进行读、写操作,下面哪些流可能被用到()。

A、FileReaderB、FileInputStreamC、FileWriterD、FileOutputStream5、下面哪些方法可以创建文件流( )。

A、文件名B、目录C、路径D、File类的对象第三题、判断题(每题1分,5道题共5分)1、FileWriter out = new FileWriter("outagainc.txt");out.write(c);执行这些语句时,可能会抛出IOException。

正确错误2、BufferedReader in = new BufferedReader(new InputStreamReader(System.in));in.readLine();该操作的功能是从标准输入接收字符,每次接收一个字符。

正确错误正确错误正确错误正确错误。

Java练习题1-4章

Java练习题1-4章

第1章Java开发入门一、填空题1、Java程序的运行环境简称之为______。

2、编译Java程序需要使用______命令。

3、javac.exe和java.exe两个可执行程序存放在JDK安装目录的______目录下。

4、______环境变量用来存储Java的编译和运行工具所在的路径。

二、选择题1、Java属于以下哪种语言?A、机器语言B、汇编语言C、高级语言D、以上都不对2、下面哪种类型的文件可以在Java虚拟机中运行?A、.javaB、.jreC、.exeD、.class3、安装好JDK后,在其bin目录下有许多exe可执行文件,其中java.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的值为______。

java第4章习题答案

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程序设计案例教程》第四章练习答案

《Java程序设计案例教程》第四章练习答案

第四章练习参考答案一、单项选择题1.对函数而言,下列叙述正确的是(D)。

A.一个程序中可以出现一个以上的主函数B.函数与主函数可以互相调用C.用户自定义的函数必须有形式参数D.调用函数和被调用函数可以不在同一个文件中2.在C++语言中,确定函数返回值的类型由(D)。

A.return语句中的表达式类型决定B.调用该函数的主函数类型决定C.调用该函数时系统状态决定D.定义函数时所指定的函数类型决定3.下列关于C++函数的叙述中,正确的是(C)。

A.每个函数至少要具有一个参数B.每个函数都必须返回一个值C.函数在被调用之前必须先声明D.函数不能自己调用自己4.函数调用语句calc(exp1,(exp2,exp3,exp4));中,含有的实参个数是(B)。

A.1B.2C.3D.45.调用函数时,若实参是一个数组名,则向函数对应的形参传送的是(B)。

A.数组元素的个数B.数组的首地址C.数组第一个元素的值D.数组中全部元素的值6.若已定义的函数有返回值,则以关于该函数调用的叙述中错误的是(D)。

A.调用可以作为独立的语句存在B.调用可以作为一个函数的实参C.调用可以出现在表达式中D.调用可以作为一个函数的形参7.有以下函数定义:void fun( int n,double x){…}若以下选项中的变量都已正确定义并赋值,则对函数fun()的正确调用语句是(C)。

A.fun(int y,double m);B.k=fun(10,12.5);C.fun(x,n);D.void fun(n,x);8.在C++语言中,函数的形式参数是(A)。

A.局部变量B.全局变量C.静态变量D.外部变量9.如果要一个变量在整个程序运行期间都存在,但是仅在说明它的函数内可见,则这个变量的存储类型应该被说明为(A)。

A.静态变量B.自动变量C.外部变量D.寄存器变量10.设有函数原型void test (int a,int b=7,char c="");,下面的函数调用中,属于不合法调用的是(C)。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.分别编写两个方法,一个方法的功能是求一个double型数值的向右取整,另一个方法求double型数值的向左取整。

数d的向右取整是大于等于d的最小整数,d的向左取整是小于等于d的最大整数。

例如:5.3的向右取整是6而向左取整是5.答:public class One{static int right(double x){if(x!=5)x=x+1;return (int)x;}static int left(double x){return (int)x;}public static void main(String args[]){System.out.println("5.3向左取整为:"+left(5.3));System.out.println("5.3向右取整为:"+right(5.3));}}程序运行结果为:2.写一个方法计算一个整数各位数字的和。

使用下述的方法说明:public static int sumDigits(long n)例如:sumDigits(276)返回2+7+6=15 。

提示:用求余运算符%分解数字,用除号/分离位数。

例如334%10=4而334/10=33.用循环反复分解和分离每位数字,直到所有的位数都被分解。

答:public class Two{public static int sumDigits(long n){long sum=0,t;while(n!=0)47{t=n%10;n=n/10;sum+=t;}return (int)sum;}public static void main(String args[]){System.out.println("334各个位数字之和为:"+sumDigits(334));}}程序运行结果为:3. 编写程序,用Math类中的sqrt方法打印下表:Number SquareRoot ....................................0 0.00002 1.41424 2.00006 2.44958 2.828410 3.162312 3.464114 3.741716 4.000018 4.242620 4.4721答:public class Three{public static void main(String args[]){System.out.println("Number SquareRoot");System.out.println("..................");for(int i=0;i<=20;)4748{System.out.printf("%d\t%.4f\n",i,Math.sqrt(i));i=i+2;}}}程序运行结果为:4. 请定义一个名为Rectangle的矩形类。

数据域为宽(width)、高(height)和颜色(color),width和height是double型的,color时String型的。

假定所有矩形的颜色相同。

用一个类变量表示颜色。

要求提供访问其方法和计算矩形面积的FindArea()方法。

答:import java.util.Scanner;class Rectangle{Rectangle(double w,double h){width=w;height=h;}public double FindArea(){return width*height;}double width,height;static String color;4849}public class Four{public static void main(String[] args) {double width,height;Scanner s=new Scanner(System.in);System.out.print("请输入矩形的宽:");width=s.nextDouble();System.out.print("请输入矩形的高:");height=s.nextDouble();System.out.print("请输入矩形的颜色:");Rectangle.color=s.next();Rectangle juxing=new Rectangle(width,height);System.out.println("矩形的面积为:"+juxing.FindArea());}}程序运行结果为:5.请定义一个名为Fan的类模拟风扇,属性为speed、on、radius和color。

要求为每个属性提供访问器方法,并提供方法toString,返回包含类中所有属性值的字符串。

假设风扇有三个固定的速度,用常数1、3、9表示慢、中、快速。

然后定义一个测试类,测试Fan 类,在测试类中创建一个Fan对象,设置最大速度、半径为10、黄色、打开状态。

调用toString 方法显示该对象。

答:class Fan{private int speed;private boolean on;private double radius;private String color;public Fan(int s,boolean o,double r,String c){speed=s;on=o;4950radius=r;color=c;}public int getSpeed(){return speed;}public boolean getOn(){return on;}public double getRadius(){return radius;}public String getColor(){return color;}public void toStrings(){if(on)System.out.print("风扇已打开并且");elseSystem.out.print("风扇已关闭");if(speed==1)System.out.println("风速状态为慢");else if(speed==3)System.out.println("风速状态为中");else if(speed==9)System.out.println("风速状态为快");elseSystem.out.println("无风速");System.out.println("半径为"+radius);System.out.println("颜色为"+color);}}5051public class Five{public static void main(String args[]){Fan fs=new Fan(9,true,10,"黄色");fs.toStrings();}}程序运行结果为:6. 请定义一个名为Account的类模拟帐户、该类的属性和方法如下图所示,利息安月Accountprivate int idprivate double balanceprivate double annuallnterestRatepublic Account()public Account(int id,double balance,double annuallnterestRate)public int getId()public double getBalance()public double getAnnuallnterestRate()public void setId(int id)public void setBalance(double balance)public void setAnnuallnterestRate(double annuallnterestRate)public void withdraw(double amount)public void deposit(double amount)写一个用户程序测试Account类。

在用户程序中,创建一个账号为1234、余额10000、年利率2.5%的Account对象。

使用withdraw方法提款3000元,使用deposit方法存款3000元,并打印余额和月利率。

答:class Account{public Account(){5152id=0;balance=0.0;annuallnterestRate=0;}public Account(int id,double balance,double annuallnterestRate){this.id=id;this.balance=balance;this.annuallnterestRate=annuallnterestRate;}public int getId(){return id;}public double getBalance(){return balance;}public double getAnnuallnterestRate(){return annuallnterestRate;}public void setId(int id){this.id=id;}public void setBalance(double balance){this.balance=balance;}public void setAnnuallnterestRate(double annuallnterestRate){this.annuallnterestRate=annuallnterestRate;}public void withdraw(double amount){this.balance-=amount;5253}public void deposit(double amount){this.balance+=amount;}private int id;private double balance;private double annuallnterestRate;}public class Money{public static void main(String[] args) {Account a=new Account(1234,10000,0.0025);System.out.println("当前账户ID:"+a.getId());System.out.println("当前账户余额:"+a.getBalance());System.out.println("当前利率:"+a.getAnnuallnterestRate());System.out.println("取款3000后:");a.withdraw(3000);System.out.println("当前账户余额:"+a.getBalance());System.out.println("存款3000后:");a.deposit(3000);System.out.println("当前账户余额:"+a.getBalance());}}程序运行结果为:7.分别定义人类(People)、狗类(Dog)和羊类(Sheep).要求为每个属性提供访问器方法。

相关文档
最新文档