java课后习题
《Java基础入门》_课后习题答案大一计算机专业7
《Java基础入门》课后习题答案第7章IO(输入输出)一、填空题1、Java中的I/O流,按照传输数据不同,可分为:字节流、字符流2.在Buffer与Channel交互时,数据从:Channel、读取到Buffer 中,或从Buffer入到Channel 中。
3.用于将字节流转换为字符流的是:InputStreamReader、OutputStreamWriter2、NIO主要有三大核心部分:Buffer、Channel、Selector5、Java中提供了一个类:RandomAccesseFile,它不但具有读写文件的功能,而且可以随机地从文件的任何位置开始执行读写数据的操作。
二、判断题1. 如果一个File表示目录下有文件或者子目录,调用delete()方法也可以将其删除。
错2.对象序列化是指将一个Java 对象转换成一个I/0 流中字节序列的过程。
对3.Channel 是一个接口对象,它类似于传统的流对象。
对4.InputStream类的close()方法是用于关闭流并且释放流所占的系统资源。
对5,BufferedInputStream 和BufferedOutputStream 不是字节缓冲流。
错三、选择题1.下面选项中,哪些是标准输人输出流?(多选) (AB)A. System.InB.System. OutC.InputStreamD.OutputStream2.File类中以字符串形式返回文件绝对路径的方法是哪一项?(C)A. getParent()B. getNamel)C. getAbsolutePathOD. getPath()3.以下创建RandomAccessFile类实例对象的代码,哪些是正确的?(多选)(AB)A.new RandomAccessFile(new File("D:\\itcast\\dirl\test. java"),”rw”);B.new RandomAccessFile("D:\\itcast\\dirl\test. java","r");C. new RandomAccessFile("D:\\itcast\\dir1\\test.java");D. new RandomAccessFile("D:\\itcast\\dir1\\test.java","wr")4.以下选项中,哪个流中使用了缓冲区技术? (A)A. BufferedOutputStreamB. FileInputStreamC. DataOutputStreamD. FileReader5.以下选项中,关于Java NIO 中Buffer类的常用说法正确的是哪一项?(B)A.clearO方法会清除缓冲区数据,并将position 设置为0.limit 设置为capacity OB.fip()方法先将limit 设置为当前position 位置,然后再将pson设置为0C.mark()方法用于设置Buffer 的标记(mark),其能在0 与limi 之间做标记D.rewind()方法将position 设置为0,并设置mark 标记四、简答题1、简述I/O 流的概念。
《Java基础程序设计》_课后习题
第一章思考题】1、简述path 环境变量的作用。
2、请说说你对JVM 的理解。
答案】1、path 环境变量是系统环境变量中的一种,它用于保存一系列可执行文件的路径,每个路径之间以分号分隔。
当在命令行窗口运行一个可执行文件时,操作系统首先会在当前目录下查找是否存在该文件,如果不存在会继续在path 环境变量中定义的路径下去寻找这个文件,如果仍未找到,系统会报错。
2、JVM 是Java Virtual Machine 的缩写,全称是Java 虚拟机。
Java 语言的一个非常重要的特性就是跨平台性,而Java 虚拟机是实现这一特性的关键。
不同的操作系统需要使用不同版本的虚拟机,这种方式使得Java语言能够“一次编写,到处运行”。
Java语言编译程序只需生成在Java 虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。
Java虚拟机在执行字节码时,把字节码解释成具体平台上的机器指令执行。
第二章【思考题】1、请简述& 与&& 的区别。
2、简述break、continue 和return 语句的区别。
【答案】1、&和&&都可以用作逻辑与的运算符,表示逻辑与(and),当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false。
当运算符“ &”和“ && ”的右边为表达式时,使用“ &”进行运算,不论左边为true 或者false,右边的表达式都会进行运算。
如果使用" && ”进行运算,当左边为false时,右边的表达式则不会进行运算,因此“ && ”被称作短路与。
2、break 语句:在switch 条件语句和循环语句中都可以使用break 语句。
当它出现在switch 条件语句中时,作用是终止某个case并跳出switch结构。
JAVA课后习题答案
JAVA课后习题答案第⼀章Java语⾔概述2.“java编译器将源⽂件编译为的字节码⽂件是机器码”这句话正确吗?答:不正确3.java应⽤程序的主类必须含有怎样的⽅法?答:含有main⽅法4。
“java应⽤程序必须有⼀个类是public类”这句话正确吗?答;不正确,只能有⼀个public类5。
“java Applet程序的主类必须是public类”这句话正确吗?答:正确,因为java Applet主类必须是Applet类的⼦类并且是public的类6。
请叙述java源程序的命名规则。
答:与public的类同名。
7。
源⽂件⽣成的字节码⽂件在运⾏时都加载到内存中吗?答:⾮也,动态随需要运⾏才加载。
8.⾯向对象的程序设计语⾔有那些基本特征?答:封装;继承;多态性。
9.在Java程序中有多个类⽂件时,⽤Java命令应该运⾏那个类?答:具有main⽅法的类第⼆章基本数据类型和数组4。
下列哪些语句是错的?Int x=120;Byte b=120;b=x;答:B=x;错应为b=(byte)x5。
下列哪些语句是错的?答:y=d;错,应y=(float)d6。
下列两个语句是等价的吗?Char x=97;Char x=…a?;答:是等价的。
7。
下列system.out.printf语句输出结果是什么?Int a=97;Byte b1=(byte)128;Byte b2=(byte)(-129);System.out.printf(“%c,%d,%d”,a,b1,b2);如果输出语句改为:System.out.printf(“%d,%d,%d”,a,b1,b2);输出什么?答:输出a ,-128,127修改后输出97,-128,1278.数组是基本数据类型吗?怎样获取数组的长度?答:不是基本数据类型,是复合数据类型。
可以通过:数组名.length的⽅法获得数组长度9。
假设有两个int类型数组:Int[] a=new int[10];Int[] b=new int[8];b=a;A[0]=100;B[0]的值⼀定是100吗?答;⼀定,因为a数组与b数组引⽤相同。
《Java程序设计》(唐大仕)课后习题答案
第1章 Java语言面与向对象的程序设计1. Java语言有哪些主要特点?答:〔要点〕:1.简单易学2.面向对象3.平台无关性4.安全稳定5.支持多线程6.很好地支持网络编程7.Java丰富的类库使得Java可以广泛地应用2.简述面向过程问题求解和面向对象问题求解的异同。
试列举出面向对象和面向过程的编程语言各两种。
答:面向过程问题求解,以具体的解题过程为研究和实现的主体,其思维特点更接近于电脑;面向对象的问题求解,则是以“对象”为主体,“对象”是现实世界的实体或概念在电脑逻辑中的抽象表示,更接近于人的思维特点。
面向过程的编程语言:C,Pascal,Foratn。
面向对象的编程语言:C++,Java,C#。
3.简述对象、类和实体及它们之间的相互关系。
尝试从日常接触到的人或物中抽象出对象的概念。
答:面向对象技术中的对象就是现实世界中某个具体的物理实体在电脑逻辑中的映射和表达。
类是同种对象的集合与抽象。
类是一种抽象的数据类型,它是所有具有一定共性的对象的抽象,而属于类的某一个对象则被称为是类的一个实例,是类的一次实例化的结果。
如果类是抽象的概念,如“电视机”,那么对象就是某一个具体的电视机,如“我家那台电视机”。
4.对象有哪些属性?什么是状态?什么是行为?二者之间有何关系?设有对象“学生”,试为这个对象设计状态与行为。
答:对象都具有状态和行为。
对象的状态又称为对象的静态属性,主要指对象内部所包含的各种信息,也就是变量。
每个对象个体都具有自己专有的内部变量,这些变量的值标明了对象所处的状态。
行为又称为对象的操作,它主要表述对象的动态属性,操作的作用是设置或改变对象的状态。
学生的状态:、性别、年龄、所在学校、所在系别、通讯地址、号码、入学成绩等;学生的行为:自我介绍、入学注册、选课、参加比赛等。
5.对象间有哪三种关系?对象“班级”与对象“学生”是什么关系?对象“学生”与对象“大学生”是什么关系?答:对象间可能存在的关系有三种:包含、继承和关联。
JAVA课后练习题
一、选择题1、在创建某类的对象时应该( )A、先声明对象,然后才能使用对象B、先声明对象,为对象分配内存空间,然后才能使用对象C、先声明对象,为对象分配内存空间,对对象初始化,然后才能使用对象D、以上述说法都对2、以下说法中对Java中定义的父类与子类的关系描述正确是的( )A、一个子类可以有多个父类,一个父类也可以有多个子类B、一个子类可以有多个父类,但一个父类只可以有一个子类C、一个子类可以有一个父类,但一个父类可以有多个子类D、上述说法都不对3、给定如下Java 程序片断:class A{ public A(){ System.out.print ("Java"); }}class B extends A{ public B(){ System.out.print (" Welcome"); }public static void main(String[] args){ B b=new B(); }}上述程序将( )A、不能通过编译B、通过编译,输出为: Java WelcomeC、通过编译,输出为: WelcomeD、通过编译,输出为: Java4、给定以下程序段,如下:int i=0,j=-1;switch(i){ case 0:j=1; case 2:j=2; default:j=5; }System.out.print("j="+j); 编译运行,正确的是( )A、j=-1B、j=1C、j=2D、j=55、下面关于Java构造函数的描述正确的是( )A、类必须有显式定义构造函数B、它的返回类型是voidC、它和类有相同的名称,但它不能带任何参数D、以上描述都是错误的6、在Java编程中,用来执行Java类文件的命令是( )A、javacB、javaC、appletviewerD、以上都不对7、如下程序片段,体现了Java的( ) 概念public void aMethod(String s) {........}public void aMethod(int i) {........}public void aMethod(int I,float f) {........}A、多继承B、重载C、重写D、多态8、如下Java升序片段Integer a = new Integer(3); Integer b = new Integer(3);System.out.println(a==b);运行后,该程序段的输出结果是( )A、trueB、falseC、0D、19、有如下Java程序声明String s1=new String(“Java”);String s2=new String(“Welcome”);String s3=new String("0"); 以下选项中能够通过编译的是( )A、s3=s1+s2B、s3=s1&s2C、s3=s1||s2D、s3=s1&&s210、在子类构造方法内可以对超类的构造方法(super())进行调用的位置是( )A、子类构造方法的任何地方B、子类构造方法的第一条语句处C、子类构造方法的最后一条语句处D、不能对超类的构造方法进行调用11、传递4,0来运行下列代码中的方法divide(int a, int b)public void divide(int a, int b){ try { int c = a / b; }catch (Exception e) { System.out.print("Exception "); }finally { System.out.println("Finally"); }}程序的输出结果是( )A、打印输出: Exception FinallyB、打印输出: FinallyC、打印输出: ExceptionD、没有任何输出12、在单一文件中import、class和package的正确出现顺序是( )A、package, import, classB、class, import, packageC、import, package, classD、package, class, import13.下列语句中,可以作为无限循环语句的是A) for(;;) {}B) for(int i=0; i<10000;i++) {}C) while(false) {}D) do {} while(false)14.自定义异常类的父类可以是A) ErrorB) VirtuaMachineErrorC) ExceptionD) Thread15.String、StingBuffer都是______类,都不能被继承。
《Java基础入门》课后题答案
《Java基础入门》习题答案第1章Java开发入门一、填空题1、Java EE、Java SE、Java ME2、JRE3、javac4、bin5、path、classp ath二、选择题1、ABCD2、C3、D4、B5、B三、简答题1、面向对象、跨平台性、健壮性、安全性、可移植性、多线程性、动态性等。
2、JRE(Java Runtim e Enviro nment,Java运行时环境),它相当于操作系统部分,提供了Jav a程序运行时所需要的基本条件和许多Jav a基础类,例如,IO类、GUI控件类、网络类等。
JRE是提供给普通用户使用的,如果你只想运行别人开发好的Jav a程序,那么,你的计算机上必须且只需安装JRE。
JDK(Java Develo pment Kit,Java开发工具包),它包含编译工具、解释工具、文档制作工具、打包工具多种与开发相关的工具,是提供给Ja va开发人员使用的。
初学者学习和使用Jav a语言时,首先必须下载和安装JD K。
JDK中已经包含了JR E部分,初学者安装J DK后不必再去下载和安装JRE了。
四、编程题public classHelloW orld{public static void main(String[] args) {System.out.println("这是第一个J ava程序!");}}第2章Java编程基础一、填空题1、class2、true和false3、单行注释、多行注释、文档注释4、基本数据类型、引用数据类型5、1、2、4、86、& && | ||7、08、59、3410、56二、判断题1、错2、对3、错4、对5、错三、选择题1、AD2、AD3、C4、ABCD5、C 6 、A 7、AC 8、A 9、B 10、A四、程序分析题1、编译不通过。
java课后习题答案及部分作业答案
java课后习题答案及部分作业答案第⼀章Java概述⼀、选择题1、下⾯哪个是在Dos命令提⽰符下编译Java程序的命令?(A )A. javacB. javaC. javadocD. javaw2、以下哪些是Java程序中有效的注释符号?(ABC )A. //B. /* */C. /** */D. */ */3、以下哪个不是Java语⾔的特点?(B )A. ⾯向对象B. ⾃动检查语法错误C. 跨平台D. 解释执⾏4、Java编译器会将Java程序转换为(C )A. 可执⾏代码B. ⽬标代码C. 字节码D. 机器代码5、Java源⽂件的扩展名是(D )A. .classB. .jarC. .javD. .java⼆、简答题1、Java的跨平台的含义是什么?为什么Java可以跨平台?Java语⾔的⼀个⾮常重要的特点就是平台⽆关性。
它是指⽤Java编写的应⽤程序编译后不⽤修改就可在不同的操作系统平台上运⾏。
Java之所以能平台⽆关,主要是依靠Java虚拟机(JVM)来实现的。
JVM是⼀种抽象机器,它附着在具体操作系统之上,本⾝具有⼀套虚机器指令,并有⾃⼰的栈、寄存器组等。
Java编程⼈员在编写完Java程序后,Java编译器将Java源代码⽂件编译后⽣成字节码⽂件2、简述Java语⾔的特点Java具有以下特点:1)、简单性Java语⾔的语法规则和C语⾔⾮常相似,只有很少⼀部分不同于C语⾔,并且Java还舍弃了C语⾔中复杂的数据类型(如:指针和结构体),因此很容易⼊门和掌握。
2)、可靠性和安全性Java从源代码到最终运⾏经历了⼀次编译和⼀次解释,每次都有进⾏检查,⽐其它只进⾏⼀次编译检查的编程语⾔具有更⾼的可靠性和安全性。
3)、⾯向对象Java是⼀种完全⾯向的编程语⾔,因此它具有⾯向对象编程语⾔都拥有的封装、继承和多态三⼤特点。
4)、平台⽆关和解释执⾏Java语⾔的⼀个⾮常重要的特点就是平台⽆关性。
它是指⽤Java编写的应⽤程序编译后不⽤修改就可在不同的操作系统平台上运⾏。
《Java基础入门》_课后习题答案大一计算机专业8
《Java基础入门》课后习题答案第8章GUI(图形用户界面)一、填空题1、在Java 中,图形用户界面简称: GUI2、事件监听器: 负责监听事件源上发生的事件,并对各种事件做出响应处理。
3、GUI 设计提供了一些基本的图形用户接口开发工具,如AWT:Swing 和JavaFX。
4、.如果单击Frame窗口有上角的关闭按相能将其关闭:那么这个Frame窗口添加了:WindowListener 监听器,并实现了监听器:windowClosing(WindowEvent e) 的方法。
5、创建下拉式菜单需要使用三个组件,分别是:JMenuBar、JMenu、JMenuItem二、判断题1、容器(Container)是一个可以包含基本组件和其他容器的组件。
对2.可以通过实现AetionListener 接口或者继承AconAdpter 类来实现动作事件监听器。
错3.CardLayout 布局管理器将界面看做一系列卡片,在任何时候只有其中一张卡片是可见的。
对4.非模态对话框是指用户需要等到处理完对话框后才能继续与其他窗口进行交互。
错5.JFrame 的默认布局管理器是FlowLayout。
错三、选择题1.下面四个组件中哪一个不是JComponent 的子类? (B)A.JButtonB.JDialogC. JLabelD.JMenuBar2.下面四个选项中,哪些是事件处理机制中的角色?(多选) (ABD)A.事件B.事件源C.事件接口D.事件监听器3. ActionEvent 的对象会被传递给以下哪个事件处理器方法? (D)A.addChangeListener()B. addActionListener()C. stateChanged()D. actionPerformed()4.下面哪些是FlowLayout 类中表示对齐方式的常量?(多选) (ABD)A.FlowLayout.LEFTB.FlowLayout.CENTERC. FlowLayout. VERTICALD. FlowLayout. RIGHT5.下列选项中关于JavaFX,描述错误的是(C )A.JavaFX是一个强大的图形和多媒体处理工具包集合B. JavaFX 允许开发者来设计、创建、测试、调试和部署客户端程序C.JavaFX不能与Swing实现互操作D.JavaFX可以实现跨平台功能四、简答题1、请简述GUI 中实现事件监听的步骤:●通过实现XxxListener接口或者继承XxxAdapter类实现一个事件监听器类,并对处理监听动作的方法进行重写●创建事件源对象和事件监听器对象●调用事件源的addXxxLisntener()方法,为事件源注册事件监听器对象2、请简述Swing 中的布局管理器有哪些。
java课后习题及答案
第一章JAV A语言概论一、选择题1.下列不属于java语言特点的是:BA.java能检查程序在变异和运行时的错误B.java能运行虚拟机实现跨平台C.java自己操纵内存减少了内存出错的可能性D.java还实现了真数组,避免了覆盖数据的可能2.java语言的执行模式是:CA.全编译型B.全解释型C.半编译和半解释型D.同脚本语言的解释模式3.下列关于虚拟机说法错误的是:BA.虚拟机可以用软件实现B.虚拟机部可以用硬件实现C.字节码是虚拟机的机器码D.虚拟机把代码程序与各操作系统和硬件分开4.java语言是1995年由()公司发布的AA.SunB.MicrosoftC.BorlandD.Fox Software5.下列不是虚拟机执行过程特点的是AA.双线程B.多线程C.动态链接D.异常处理6.java以JVM为基础,最下层是移植接口,由适配器和()组成BA.网卡B.Java osC.Java基本类D.Java应用程序和applet小程序7.java程序的执行过程中用到一套JDK工具,其中javac.exe指AA.java语言编译器B.java字节码解释器C.java文档生成器D.java类分解器8.java的API结构中,不属于类库主要包括的核心包的是CA.java包B.javaxC.javadoc包扩展包9.每个java的编译单元可包含多个类或界面,但是每个编译单元最多只能有()类或者界面是公共的AA.一个B.两个C.四个D.任意多个10.在当前的java实现中,每个编译单元就是一个以()为后缀的文件AA.javaB.classC.docD.exe二、填空题1.1991年,SUN公司的Jame Gosling和Bill Joe等人,为电视、控制烤面包机等家用电器的交互操作开发了一个__oak__软件,它是java的前身。
2.java是一个网络编程语言,简单易学,利用了面向对象___的技术基础,但又独立于硬件结构,具有可移植性、健壮性、安全性、高性能。
《Java2实用教程》课后习题参考答案
Java2 实用教程(第三版)课后习题参考答案第1 章Java 入门1. 开发与运行Jav a 程序需要经过哪些主要步骤和过程?答:( 1)编写Java 源文件:使用文本编辑器(Edit 或记事本),拓展名为.java(2)编译Java 源文件:使用Java 编译器(javac.exe)。
得到字节码文件*.class(3)运行Java 程序:Java 应用程序使用Java 解释器(java.exe)执行字节码文件;Java 小应用程序使用支持Java 标准的浏览器来执行。
2. 怎样区分应用程序和小应用程序?应用程序的主类或小应用程序的主类必须用public 修饰吗?答:①应用程序必须有main 方法,这个方法是程序执行的入口。
小应用程序没有main 方法。
②应用程序的主类不一定用public 修饰;小应用程序的主类必须用public 修饰。
3. Jav a 程序是由什么组成的?一个程序中必须要有public 类吗?Jav a 源文件的命名规则是怎样的?答:①Java 程序由类组成。
②应用程序可以没有public 类;小应用程序一定有一个类是public 类(主类)。
③应用程序:如果只有一个类,源文件名与该类的类名相同,拓展名为.java;有多个类时,如果有public 类(最多一个),源文件名与public 类的类名相同,拓展名是.java;没有public 类,源文件名与任何一个类的类名相同即可,拓展名为.java。
小应用程序:源文件名与主类的类名相同,拓展名是.java。
4. 在运行小程序的HTM L 文件中可以使用codebas e 属性指定小程序的字节码所驻留的目录。
如果不使用codebas e 属性,小程序的字节码文件必须和运行它的HTM L 文件在同一目录中。
编写一个小程序并将小程序的字节码存放在某个目录中,比如C:\5000;把运行该小程序的HTM L 文件(注意其中的codebas e 属性):<applet code=你的小程序的字节码width=200 height=300 codebase=C: \5000></applet>存放在另一个目录中。
java课后习题答案
case 6: System.out.println(n+"天后是星期六"); break;
}
}
}
5. 用户在命令行输入一个数字,按照数字输出相应个数的星号。
public class PrintStar {
第1章 了解Java
1. 编写一个程序,将用户在命令行输入的24小时制时间转换为12小时制。
public class TimeTest{
public static void main(String args[]){
int time;
time = Integer.parseInt(args[0]);
图1
public class PrintGrade {
public static void main(String[] args) {
double score = Double.parseDouble(args[0]);
if(score<0 || score>100)
System.out.println("错误,不是一个合法的百分制成绩!");
case 1: System.out.println(n+"天后是星期一"); break;
case 2: System.out.println(n+"天后是星期二"); break;
case 3: System.out.println(n+"天后是星期三"); break;
Java课后习题答案第五章
char c[] = {'O','l','y','m','p','i','c',' ','G','a','m','e','s'};
rever(c);
System.out.println(c);
}
public static void rever(char c[]){char t;
for(int i=0,j=c.length-1;i<j;i++,j--)
import java.io.*;
public class Test
{ public static void main(String[] args)
{ int i,a=0,s=0;
System.out.print("请输入数a:");
try{
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
{
sum+=x[i];
}
System.out.println("平均数:"+sum/10);
}
}
17.利用数组输入6位大学生3门课程的成绩,然后计算
(1)每个大学生的总分;
(2)每门课程的平均分;
import java.io.*;
public class Scores
{
public static void main(String[] args)throws IOException
java课后题答案
第1章Java概述1.编译java application源程序文件将产生相应的字节码文件,这些字节码文件别的扩展名为.java2.执行一个java程序fristapp的方法是运行java fristapp3.main()方法的返回类型是void4.在java代码中,public static void main方法的参数描述正确的是string args【】,string【】args5.内存的回收程序负责释放无用内存√6.java体系主要分为java ME,Java SE,JavaEE三大块第2章Java基础1.Java语言中,下列标识符错误的是40name2.java变量中,以下不属于引用类型的数据类型是字符型3.double d=5.3E12 ×4.C5.A6.for循环的一般形式为;for(初值;终值;增量),以下对for循环的叙述,正确的是初值和增量都是赋值语句,终值是条件判断语句7.当输入下面选项中3值时,将会输出default8.下面哪种方法能够支持javadoc命令/**…*/9.下面声明一个string类型的数组正确的是string str[]10.下面定义一个整型数组,不合法的是int[][]array=new int[][4];11.给定代码;。
下面叙述正确的是输出的结果为:012.java语言规定,标示符只能由字母,数字美元符$和下划线租成,并且第一个字符不能是数字;java是区分大小写的。
13.表达式1/2*3的计算结果是0;设x=2,则表达式(x++)/3的值是014.数组的长度可以用其属性lengt h获得;创建一个数组对象可以使用new关键字创建第3章面向对象基础1.在java中引用对象变量和对象间有什么关系?引用变量是指向对象的一个指针2.对象是面向对象技术的核心所在,在面向对象程序设计中,对象是累的抽象×3.构造方法何时被调用?创建对象时4.A,B,D5.在java语言中在包p1中包含包p2,类A直接隶属于p1,类B直接隶属于包p2.在类c中要使用类a的方法和类b的方法b,需要选择import p1.*; import p1.p2,*;6.java中,访问修饰符限制最高的是private第4章类之间的关系1.在java中,下面关于类的描述正确的是一个父类可以有多个子类2.在java语言中,类worker是类person的子类,worker的构造方法中有一句“super()”,该语句是调用person的构造法法。
《Java基础入门》_课后习题答案大一计算机专业5
《Java基础入门》课后习题答案第5章Java中的常用类一、填空题1.在Java中定义了两个类来封装对字符串的操作,它们分别是String和StringBuffer2.java的操作日期的类有Date、Calendar、DateFormat3.java中专门用于将日期格式化为字符串的类是DateFormat4.System类中所提供的属性和方法都是静态的,想要引用这些属性和方法,直接使用System类调用即可5.已知sb为StringBuffer的一个实例,且sb. toString()的值为"abede,则执行sb.reverse()后,sb toString()的值为edcba二、判断题1. String对象和StringBuffer对象都是字符串变量,创建后都可以修改。
(×)2.用运算符==比较字符串对象时,如果两个字符串的值相同,结果为true。
(×)3. System类中currentTimeMillis方法返回一个long类型的值。
(√)4.Date、Calendar以及DateFormat类都位于java.util包中。
(×)5. String类的方法replace(CharSequence srtl, CharSequence srt22)返回一个新的字符串,它是通过用srt2替换此字符串中出现的所有srtl得到的。
(对)三、选择题1、C2、C3、B4、A5、B1.以下都是Math类的常用方法,其中用于计算绝对值的方法是哪个?(C)A. ceil()B. floor()C. abs()D. random()2.String s=abededcba";则s. substring(3,4)返回的字符串是以下选项中的哪个?(C)A. cdB. deC. dD. e3.要产生[20,999]之间的随机整数可以使用以下哪个表达式?(B)A.(int)(20+math. random()97)B. 20+(int)(Math. random( )*980)C.(int)Math.random() * 999D.20 + (int)Math.random() * 9804.下面的程序段执行后,输出的结果是以下哪个选项?(A)A. Beijing@2008B.@ Beijing2008C. Beijing2008@D. Beijing#20085.先阅读下面的程序片段:对于上述定义的变量,以下表达式的值为true的是哪个?(B)A. strl=str2:B. strl. equals(str2):C.str= = str3;D.以上都不对四、简答题1.简述String 和StringBuffer 有什么区别。
《Java基础入门》_课后习题答案
3、打印结果为:3。
4、打印结果为:
9
8
7
五、简答题
1、Java语言的八种基本数据类型有:byte字节型,占一个字节。short短整型,占两个字节。int整型,占4个字节。long长整型,占8个字节。float单精度浮点型,占4个字节。double双精度浮点型,占8个字节。char字符型,占两个字节。boolean型,表示逻辑值,有true和false两个值,分别占一个字节。
2、多态意味着一个对象有着多种形态,可以在特定的情况下,表现不同的状态,从而对应着不同的属性和方法。简单的说,多态就是使用父类类型的变量引用子类对象,根据被引用子类对象的特性,程序会得到不同的运行效果。
3、在Java中,使用abstract关键字修饰的类称之为抽象类。抽象类是不能被实例化的,通常需要写一个子类来继承抽象类,同时实例化子类来获得该类的对象。抽象类通常用于表示一种抽象的概念。
2、单例模式可以保证在整个程序运行期间针对该类只存在一个实例对象。
六、编程题
1、参考答案
class Student {
private String name;
private double grade;
public Student() {
}
public Student(String name, double grade) {
public void introFather() {
System.out.println("My Father's name is " + name);
河南理工大学JAVA课后习题
(6)在创建Applet的应用程序时,用户应考虑的问题是()。
A.窗口如何创建B.绘制的图形在窗口中的位置C.程序的框架D.事件处理
(7)下列选项中,不属于Java核心包的一项是()。
A.Javax.swing B.Java.io C.Java.util ng
(11)下面不属于Java语言实现机制的是(D)。
A.并行机制B.Java虚拟机C.垃圾回收机制D.代码安全检测
(12)下列属于Java语言垃圾回收机制的一项是(A)。
A.内存跟踪B.异常处理C.代码安全检测D.健壮性
第2章
(一)填空题
(1)Java编译器将用Java语言编写的源程序编写成。
(2)Java程序基本上可以分成两类,即和。
(3)下面选项符合Java语言语法的语句是()。
A.int a=6; inst b=7; B.int a=4, int b=2;
C.double a=b*/.8; D.int a=9,b=1,c=8;a=b+c=a-b+c;
(4)执行下列程序,输出结果为()。
Public class B{
Public static void main(String [] args){
A.可以被其他包的类访问B.只能被同一个包中的其他类访问
C.只能被该类自身所访问或修改D.可以被其他包中的该类的子类访问
(6)下面关于类的说法中,错误的是()。
A.类是经过抽象的共有属性的集合B.类是Java程序的核心和本质
C.类是对象的模板,二类对象则是类的实例化结果
D.在面向对象的编程语言中,类不是一个独立的程序单位
《Java基础入门》课后习题及答案
《Java基础入门》课后习题第1章Java开发入门一、填空题1、Java的三大体系分别就是_JavaSE_____、_JavaEE_____、_JavaME_____。
2、Java程序的运行环境简称之为JRE_____。
3、编译Java程序需要使用_javac_____命令。
4、javac、exe与java、exe两个可执行程序存放在JDK安装目录的bin______目录下。
5、path______环境变量用来存储Java的编译与运行工具所在的路径,而_classpath_____环境变量则用来保存保存Java虚拟机要运行的“、class”文件路径。
二、选择题1、以下选项中,哪些属于JDK工具?(多选)ABCDA、Java编译器B、Java运行工具C、Java文档生成工具D、Java打包工具2、Java属于以下哪种语言?CA、机器语言B、汇编语言C、高级语言D、以上都不对3、下面哪种类型的文件可以在Java虚拟机中运行?DA、、javaB、、jreC、、exeD、、class4、安装好JDK后,在其bin目录下有许多exe可执行文件,其中java、exe命令的作用就是以下哪一种?BA、Java文档制作工具B、Java解释器C、Java编译器D、Java启动器5、如果jdk的安装路径为:d:\jdk,若想在命令窗口中任何当前路径下,都可以直接使用javac与java命令,需要将环境变量path设置为以下哪个选项?BA.d:\jdk;B.d :\jdk\bin;C.d:\jre\bin;D.d:\jre;三、问答题1、简述Java的特点。
面向对象、跨平台性、健壮性、安全性、可移植性、多线程性、动态性等。
2、简述JRE与JDK的区别。
JRE(Java Runtime Environment,Java运行时环境),它相当于操作系统部分,提供了Java程序运行时所需要的基本条件与许多Java基础类,例如,IO类、GUI控件类、网络类等。
《Java基础入门》课后习题答案
《Java基础入门》课后习题答案第1章Jav a开发入门一、填空题1、Java EE、Java SE、Ja va ME2、JRE3、javac4、bin5、path、class path二、选择题1、ABCD 2、C 3、D 4、B5、B三、简答题1、面向对象、跨平台性、健壮性、安全性、可移植性、多线程性、动态性等。
2、JRE(Ja va Runtime Environme nt,Java运行时环境),它相当于操作系统部分,提供了Ja va程序运行时所需要的基本条件和许多Ja va基础类,例如,I O类、GUI控件类、网络类等。
JRE是提供给普通用户使用的,如果你只想运行别人开发好的Java程序,那么,你的计算机上必须且只需安装JRE。
JDK(JavaDevelopmen t Kit,Java开发工具包),它包含编译工具、解释工具、文档制作工具、打包工具多种与开发相关的工具,是提供给Java开发人员使用的。
初学者学习和使用Java语言时,首先必须下载和安装JDK。
JDK中已经包含了JRE部分,初学者安装JDK后不必再去下载和安装JRE了。
四、编程题publicclass Hell oWorld {public sta tic void m ain(String[] args) {System.out.printl n("这是第一个Ja va程序!");}}第2章Java编程基础一、填空题1、class2、tr ue和false3、单行注释、多行注释、文档注释4、基本数据类型、引用数据类型5、1、2、4、86、& && | ||7、08、510、56 二、判断题1、错2、对3、错4、对5、错三、选择题1、AD2、AD 3、C4、ABCD5、C 6 、A 7、AC 8、A 9、B 10、A四、程序分析题1、编译不通过。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(5)采用public、private、protected以及默认等类型的成员创建一个类,然后定义这个类的一个对象。观察在访问所有类成员时会出现哪种类型的编译错误。
(6)编写一个类,它具有public、private、protected以及默认等类型的成员,将这个类存放在某个包中。在另外一个包内再编写第二个类,在此类内编写一个方法,以操作第一个类内的各个数据成员,观察在访问所有成员时会出现哪种类型的编译错误。
(5)编写一个“猜数”游戏:程序在1~100之间随机地选择一个数,然后在一个标签中显示一个提示:“猜一个1~100之间的数”,当在文本框中输入一个数并按Enter键后,若猜大了,文本框的背景色变成红色,并在另外一个标签中显示“猜大了,重猜!”,反之,若猜小了,文本框背景色变成蓝色,并在标签中显示“猜小了,重猜!”。若猜对了,显示“猜对了,真棒!”,文本框的内容这时变成不可编辑。另外提供一个按钮,单击该按钮可以重新玩这个游戏。
【1】判断两个integerSet类对象S1和S2是否相等。提示:集合相等的前提是所有元素相等。
【2】输出两个集合对象的交集。
【3】输出两个集合对象的并集。
【4】将一个整形数据插入到一个集合对象中。
【5】从一个集合中删除某一个元素。
(5)编写一个具有两种方法的基类base,并在第一个方法内调用第二个方法。然后编写一个派生类derived,并覆盖父类中的第二个方法,产生一个derived类对象,将它向上类型转换(即转换为base类型),并调用第一个方法。验证并解释运行结果。
第8章
(4)编写一个程序,采用命令行参函数输入一个文本文件名和一个字符串,在这个文件内查找这个字符串。要求输出具有该字符串的所有文件行。
(5)编写一个程序,比较两个文本文件的内容是否相同。
第9章
(3)创建一个Thread类的子类,并覆盖run()方法。要求:
【1】在构造函数中输入一条线程已启动的信息。
第10章
(1)编程:在屏幕上画出5个圆,它们的位置和半径都是随机的,圆之间间隔10个像素。
(2)编程:模拟屏幕保护程序,在屏幕上随机画线,它们的位置和颜色都是随机的。一旦画了100根,就清除屏幕,然后重新开始画线(在清除屏幕时,注意观察屏幕的变化)。
第11章
(4)用户在文本框中输入圆的半径,然后随机产生一个坐标位置,在屏幕上画圈,通过其他组件(如JTextArea)输出圆的直径、周长和面积。另外提供一个按钮,可以清除屏幕,重新画圆。
1
2
3
4
5
6
1
2
3
4
5
6
7
2
3
4
5
6
7
8
3
4
5
6
7
8
9
4
5
6
7Байду номын сангаас
8
9
10
5
6
7
8
9
10
11
6
7
8
9
10
11
12
图2-2掷骰子的各种情况
第三章
(5)编程:编写一个applet,输入一个数,判断输入的这个数是否为回文数。所谓回文数就是从左向右看和从右向左看都一样。例如,121、13431都是回文数,而12345不是回文数。
【1】增加5条记录,数据自己设计。
【2】显示成绩大于80分的学生信息。
【3】将数据表中的所有记录,按照成绩从大到小的顺序排序并显示。
【2】在run()方法内,输出一条信息,以表明执行了run()方法,然后调用sleep(),将两条语句重复6次,然后从run()返回。
【3】覆盖finalize()方法,输出一条线程结束的信息。
(4)编写一个具有两个线程的程序,第一个线程求10~20之间的素数和它们的和,第二个线程求1000~2000之间的素数和它们的和。
第6章
(4)编写一个程序,输入一行文本,采用StringTokenizer类的对象,将该文本符号化,并以逆序输出语言符号。
(5)日期的常用格式具有如下两种:
2012-11-29和November 29,2012
从键盘读入第一种格式的日期,编程输出第二种格式的日期。
(6)从键盘输入几行文本并作如下处理:
第一章
(5)上机练习JAVA应用程序和小程序的运行方法。
第二章
(5)编写一个小程序(Applet)要求输入两个整数,在状态条显示较大的数,紧跟着显示“is larger”。若二者相等,显示“the two numbers are equal!”。
(6)编写一个模拟同时掷两个骰子的程序。要用Math.random()模拟产生第一个骰子,然后再产生第二个骰子,将两个结果相加,相加的和等于7的可能性最大,等于2和12的可能性最小。程序模拟掷3600次骰子,判断求和结果是否合理,共有6种情况的和是7,故在3600次掷骰子的结果中应有1/6的可能性是7。图2-2表示出了出现36种情况的组合。
【1】显示各元音字母出现的次数。
【2】统计各个单词的长度。
第7章
(4)利用继承性定义一个异常超类,然后定义几个异常子类。编写程序验证catch语句是如何捕捉各类异常的。
(5)在Java中,若将捕捉超类异常的catch语句放在捕捉子类异常的catch语句之前,那么将会出现编译错误。编写一个程序验证这一点。
(6)编写一个applet,采用下列公式计算e^x的值:e^x=1+(e^1)/1!+(e^2)/2!+……+(e^n)/n!。从键盘输入x和n,编程计算e^x的值。
(7)编程:产生20个int类型的随机数,针对每个数使用if-then-else判断它是大于、小于或等于下一个数(注意:最后一个数不参与比较)。
(6)编写一个程序,采用MouseListener接口,允许用户按鼠标键、拖动鼠标键和释放鼠标键时,就在屏幕上画一个矩形。例如,用户在(100,120)位置按下鼠标键,然后将鼠标拖动到(200,360)的位置,那么就将(100,120)作为矩形的左下角,(100,360)作为矩形的右下角。
第12章
(3)根据本章提供的学生信息表student和其中的数据,在本章程序的基础上,编程完成如下操作:
第四章
(3)定义一个圆类circle,它有一个变量radius(半径)。从键盘输出数据,通过构造函数的参数传递给radius,编程计算并输出圆的周长和面积。但是,必须确保输入的数据不为负数。
(4)定义一个整形集合类integerSet。这种类型的对象可以储存10个20~80之间的整数,即它的内部有一个整形数组储存数据。编程: