《Java基础入门》课后习题及答案.pdf
《《Java基础入门》课后习题及答案.pdf》由会员分享,可在线阅读,更多相关《《Java基础入门》课后习题及答案.pdf(54页珍藏版)》请在咨信网上搜索。
博学谷让 IT 教学更简单,让 IT 学习更有效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、.java B、.jre C、.exe D、.class4、安装好 JDK 后,在其 bin 目录下有许多 exe 可执行文件,其中 java.exe 命令的作用是以下哪一种?BA、Java 文档制作工具 B、Java 解释器 C、Java 编译器 D、Java 启动器 5、如果 jdk 的安装路径为:d:jdk,若想在命令窗口中任何当前路径下,都可以直接使用 javac 和java 命令,需要将环境变量 path 设置为以下哪个选项?B博学谷让 IT 教学更简单,让 IT 学习更有效Ad:jdk;Bd:jdkbin;Cd:jrebin;Dd:jre;三、问答题1、简述 Java 的特点。面向对象、跨平台性、健壮性、安全性、可移植性、多线程性、动态性等。2、简述 JRE 与 JDK 的区别。JRE(Java Runtime Environment,Java 运行时环境),它相当于操作系统部分,提供了 Java 程序运行时所需要的基本条件和许多 Java 基础类,例如,IO 类、GUI 控件类、网络类等。JRE 是提供给普通用户使用的,如果你只想运行别人开发好的 Java 程序,那么,你的计算机上必须且只需安装JRE。JDK(Java Development Kit,Java 开发工具包),它包含编译工具、解释工具、文档制作工具、打包工具多种与开发相关的工具,是提供给 Java 开发人员使用的。初学者学习和使用 Java 语言时,首先必须下载和安装 JDK。JDK 中已经包含了 JRE 部分,初学者安装 JDK 后不必再去下载和安装 JRE 了。JDK(Java Development Kit,Java 开发工具包),它包含编译工具、解释工具、文档制作工具、打包工具多种与开发相关的工具,是提供给 Java 开发人员使用的。初学者学习和使用 Java 语言时,首先必须下载和安装 JDK。JDK 中已经包含了 JRE 部分,初学者安装 JDK 后不必再去下载和安装 JRE 了。四、编程题使用记事本编写一个 HelloWorld 程序,在 dos 命令行窗口编译运行。请按照题目的要求编写程序并给出运行结果。public class HelloWorld public static void main(String args)System.out.println(这是第一个 Java 程序!);博学谷让 IT 教学更简单,让 IT 学习更有效第 2 章 Java 编程基础一、填空题1、Java 中的程序代码都必须在一个类中定义,类使用_class_关键字来定义。2、布尔常量即布尔类型的两个值,分别是_true_和_flase_。3、Java 中的注释可分为三种类型,分别是_单行注释/_、_多行注释_/*/_、文档/注释*/_。4、Java 中的变量可分为两种数据类型,分别是_基本数据类型_和_引用数据类型_。5、在 Java 中,byte 类型数据占_1_个字节,short 类型数据占_2_个字节,int 类型数据占_4_个字节,long 类型数据占_8_个字节。6、在逻辑运算符中,运算符_&_和_&_用于表示逻辑与,_|_和_|_表示逻辑或。7、若 x=2,则表达式(x+)3 的值是_0_。8、若 int a=2;a+=3;执行后,变量 a 的值为_5_。9、若 int a=12,45,34,46,23;,则 a2=_34_。10、若 int a32=123,345,34,56,34,56,则 a21=_56_。二、判断题1、Java 语言不区分大小写。错2、0 xC5 表示的是一个十六进制整数。对3、continue 语句只用于循环语句中,它的作用是跳出循环。错4、“/*/”中可以嵌套“/”注释,但不能嵌套“/*/”注释。对5、-5%3 的运算结果是 2。错三、选择题1、以下选项中,哪些属于合法的标识符?(多选)AD博学谷让 IT 教学更简单,让 IT 学习更有效A、Hello_World B、class C、123username D、username1232、关于方法重载的描述,以下选项中哪些是正确的?(多选)(AD)ABD A、方法名必须一致 B、返回值类型必须不同 C、参数个数必须一致 D、参数的个数或类型不一致3、以下关于变量的说法错误的是?CA、变量名必须是一个有效的标识符B、变量在定义时可以没有初始值C、变量一旦被定义,在程序中的任何位置都可以被访问D、在程序中,可以将一个 byte 类型的值赋给一个 int 类型的变量,不需要特殊声明4、以下选项中,switch 语句判断条件可以接收的数据类型有哪些?(多选)ABCDA、int B、byte C、char D、short 5、假设 int x=2,三元表达式 x0?x+1:5 的运行结果是以下哪一个?CA、0 B、2 C、3 D、56、下面的运算符中,用于执行除法运算是哪个?AA、/B、C、%D、*7、下列语句哪些属于循环语句?(多选)AC A、for 语句 B、if 语句 C、while 语句 D、switch 语句8、下面哪种写法可以实现访问数组 arr 的第 1 个元素?A A、arr0 B、arr(0)C、arr1 D、arr(1)9、以下哪个选项可以正确创建一个长度为 3 的二维数组?(B)CA、new int 23;B、new int3;C、new int3;D、以上答案皆不对博学谷让 IT 教学更简单,让 IT 学习更有效10、请先阅读下面的代码。int x=1;int y=2;if(x%2=0)y+;else y-;System.out.println(y=+y);上面一段程序运行结束时,变量 y 的值为下列哪一项?AA、1 B、2 C、3 D、switch 语句四、程序分析题阅读下面的程序,分析代码是否能够编译通过,如果能编译通过,请列出运行的结果。否则请说明编译失败的原因。代码一:b=7(编译不通过。int 值 4 和 b 相加时,由于变量 b 的类型为 byte,取值范围没有 int 类型大,存不下 int 类型的值,因此编译不通过)public class Test01 public static void main(String args)byte b=3;b=b+4;System.out.println(b=+b);代码二:不能,y 只在有效(编译不通过。这是因为 y 是在最里层的代码块中定义的一个变量,只有在那个代码)public class Test02 public static void main(String args)int x=12;int y=96;System.out.println(x is +x);System.out.println(y is +y);y=x;博学谷让 IT 教学更简单,让 IT 学习更有效System.out.println(x is +x);代码三:3 因为没有 break,,所以 4 以后都执行public class Test03 public static void main(String args)int x=4,j=0;switch(x)case 1:j+;case 2:j+;case 3:j+;case 4:j+;case 5:j+;default:j+;System.out.println(j);代码四:987public class Test04 public static void main(String args)int n=9;while(n 6)System.out.println(n);n-;五、简答题1、请列举 Java 语言中的八种基本数据类型,并说明每种数据类型所占用的空间大小。Java 语言的八种基本数据类型有:byte 字节型,占一个字节。short 短整型,占两个字节。int 整型,博学谷让 IT 教学更简单,让 IT 学习更有效占 4 个字节。long 长整型,占 8 个字节。float 单精度浮点型,占 4 个字节。double 双精度浮点型,占 8个字节。char 字符型,占两个字节。boolean 型,表示逻辑值,有 true 和 false 两个值,分别占一个字节。2、简述&与&的区别并举例说明。如果使用“&”在表达式之间进行连接,那么无论任何情况,“&”两边的表达式都会参与计算。如果使用“&”进行连接,当“&”左边的表达式为 false,则不会执行其右边的表达式。例如定义 int x=2,y=0;boolean b=x 0 表达是会发生被 0 除异常,因为 x/y 的表达式执行了。而 boolean b=x 0 是不会出现这种异常的,因为 x 0)y=0 (x=0)x2 1 (x 10 时,paly()方法用 throw 关键字抛出 NoThisSongException 异常,创建异常对象时,调用有参的构造方法,传入“您播放的歌曲不存在”。3)在测试类中创建 Player 对象,并调用 play()方法测试自定义的 NoThisSongException 异常,博学谷让 IT 教学更简单,让 IT 学习更有效使用 trycatch 语句捕获异常,调用 NoThisSongException 的 getMessage()方法打印出异常信息。第 5 章 多线程一、填空题1、一个应用程序中有多条并发执行的线索,每条线索都被称作一个线程_,它们会交替执行,彼此间可以进行_通信_。2、在实现多线程的程序时有两种方式,一是通过继_Thread_承类,二是通过实现Runnable_接口。3、yield()方法只能让相同优先级或者更高优先级、处于_就绪_状态的线程获得运行的机会。4、在 Java 语言中,同步方法需要用到关键字_synchronized_,对于同步方法而言无需指定同步锁,它的同步锁是方法所在的_对象_,也就是_this_(关键字)。5、在多任务系统中,每个独立执行的程序称之为_线程_,也就是“正在运行的程序”。6、线程的整个生命周期分为五个阶段,分别是_新建_、就绪_、_运行_、_阻塞_、和死亡_。7、线程的优先级用 110 之间的整数来表示,其中_10_代表优先级最高,_1_代表优先级最低。8、在 Thread 类中,提供了一个 start()方法,该方法用于启动线程_,当新线程启动后,系统会自动调用_run()_方法。9、要想解决线程间的通信问题,可以使用_wait()_、notify()_、_notifyALL()_方法。博学谷让 IT 教学更简单,让 IT 学习更有效10、要将某个线程设置为后台线程,需要调用该线程的_setDaemon(true)_方法,该方法必须在_start()_方法之前调用。二、判断题1、当我们创建一个线程对象时,该对象表示的线程就立即开始运行。错2、如果前台线程全部死亡,后台线程也会自动死亡。对3、同步代码块中的锁对象可以是任意类型的对象。对4、静态方法不能使用 synchronized 关键字来修饰。错5、线程结束等待或者阻塞状态后,会进入运行状态。错三、选择题1、Thread 类位于下列哪个包中?B A、java.io B、java.lang C、java.util D、java.awt2、关于线程的创建过程,下面四种说法正确的有哪些?(多选)ACA、定义 Thread 类的子类,重写 Thread 类的 run()方法,创建该子类的实例对象,调用对象的start()方法B、定义 Thread 类的子类,重写 Thread 类的 run()方法,创建该子类的实例对象,调用对象的run()方法C、定义一个实现 Runnable 接口的类并实现 run()方法,创建该类实例对象,将其作为参数传递给 Thread 类的构造方法来创建 Thread 对象,调用 Thread 对象的 start()方法 D、定义一个实现 Runnable 接口的类并实现 run()方法,创建该类对象,然后调用 run()方法3、对于通过实现 Runnable 接口创建线程,下面说法正确的有哪些?(多选)ABC A、适合多个相同程序代码的线程去处理同一个资源的情况 B、把线程同程序代码、数据有效的分离,很好的体现了面向对象的设计思想博学谷让 IT 教学更简单,让 IT 学习更有效C、可以避免由于 Java 的单继承带来的局限性 D、编写简单,可以不通过 Thread 类直接创建线程4、对于线程的生命周期,下面四种说法正确的有哪些?(多选)ABC(BC)A、调用了线程的 start()方法,该线程就进入运行状态 (就绪,还要获得 CPU 使用权)B、线程的 run()方法运行结束或被未 catch 的 InterruptedException 等异常终结,那么该线程进入死亡状态C、线程进入死亡状态,但是该线程对象仍然是一个 Thread 对象,在没有被垃圾回收器回收之前仍可以像引用其它对象一样引用它 D、线程进入死亡状态后,调用它的 start()方法仍然可以重新启动5、对于死锁的描述,下面四种说法正确有哪些?(多选)AB(ABD)A、当两个线程互相等待对方释放同步锁时会发生死锁 B、Java 虚拟机没有检测和处理死锁的措施 C、一旦出现死锁,程序会发生异常 D、处于死锁状态的线程处于阻塞状态,无法继续运行6、下面四个选项中,哪些是线程进入阻塞状态的原因?(多选)ABCA、线程试图获取某个对象的同步锁,而该锁被其它线程持有B、线程调用了另一个线程的 join()方法C、当线程调用了一个阻塞式的 IO 方法D、线程调用了 setDaemon(boolean b)方法7、线程调用 sleep()方法后,该线程将进入以下哪种状态?CA、就绪状态 B、运行状态 C、阻塞状态 D、死亡状态 博学谷让 IT 教学更简单,让 IT 学习更有效8、在以下哪种情况下,线程进入就绪状态?DA、线程调用了 sleep()方法时 B、线程调用了 join()方法(终止)C、线程调用了 yield()方法时 D、线程调用了 notify()方法?9、下面四个选项中,对线程同步的目的描述正确的有哪些?(多选)AD(AB)A、锁定资源,使同一时刻只有一个线程去访问它,防止多个线程操作同一个资源引发错误B、提高线程的执行效率C、让线程独占一个资源D、让多个线程同时使用一个资源10、对于 wait()方法,下面说法正确的是?(多选)ABCD A、wait()方法的调用者是同步锁对象 B、wait()方法使线程进入等待状态 C、调用同一锁对象的 notify()或 notifyAll()方法可以唤醒调用 wait()方法等待的线程 D、调用 wait()方法的线程会释放同步锁对象四、程序分析题阅读下面的程序,分析代码是否能编译通过,如果能编译通过,请列出运行的结果。如果不能编译通过,请说明原因。1.代码一:不能,RunHandler 没有继承 Thread,不能用 Thread 创建对象(程序不能编译通过,因为RunHandler 类没有实现 Runnable 接口,因此 RunHandler 的实例对象不能作为参数传递给 Thread 的构造方法。)class RunHandler public void run()System.out.println(run);public class Test 博学谷让 IT 教学更简单,让 IT 学习更有效 public static void main(String args)Thread t=new Thread(new RunHandler();t.start();2.代码二:this is run(程序不能编译通过,因为 Thread 的子类 A 重写的 run()方法的访问级别不能低于父类 run()方法的。访问级别)public class A extends Threadprotected void run()System.out.println(this is run();public static void main(String args)A a=new A();a.start();3.代码三:Exception(程序不能编译通过,因为同步方法中调用 wait()方法的对象必须为同步锁对象)public class Testprivate Object obj=new Object();public synchronized void a()try obj.wait();改 this.wait()System.out.println(waiting);catch(InterruptedException e)System.out.println(Exception);public static void main(String args)new Test().a();4.为了使下面的程序能够输出“Thread is running”,请在在空格处填上相应的代码。public class B implements Runnable public static void main(String args)Thread t=new Thread(new B();_t.start()_ /此处填空public void run()System.out.println(Thread is running);博学谷让 IT 教学更简单,让 IT 学习更有效public void go()start(1);public void start(int i)五、简答题1、java 中有几种方法可以实现一个线程?请举例说明。一种是继承 java.lang 包下的 Thread 类,覆写 Thread 类的 run()方法,在 run()方法中实现运行在线程上的代码。new Thread()public void run().start();另一种就是实现 java.lang.Runnable 接口,同样是在 run()方法中实现运行在线程上的代码。new Thread(new Runnable()public void run().start()2、sleep()和 wait()有什么区别?调用 sleep()方法,正在执行的线程主动让出 CPU 去执行其他线程,在 sleep()方法指定的时间过后,CPU才会回到这个线程上继续往下执行,如果当前线程进入了同步锁,sleep()方法并不会释放锁,即使当前线程使用 sleep()方法让出了 CPU,但其它被同步锁挡住了的线程也无法得到执行。wait()在一个已经进入了同步锁的线程内进行调用,让当前线程暂时让出同步锁,以便其它正在等待此锁的线程可以得到同步锁并运行。当其它线程调用了 notify()方法后,调用 wait()方法的线程就会解除 wait 状态,当再次获得同步锁后,程序可以继续向下执行。六、编程题请按照题目的要求编写程序并给出运行结果。博学谷让 IT 教学更简单,让 IT 学习更有效1、通过继承 Thread 类的方式创建两个线程,在 Thread 构造方法中指定线程的名字,并将这两个线程的名字打印出来。2、通过实现 Runnable 接口的方式创建一个新线程,要求 main 线程打印 100 此次“main”,新线程打印 50 次“new”。3、模拟传智播客的三个老师同时分发 80 份学习笔记,每个老师相当于一个线程。4、编写 10 个线程,第一个线程从 1 加到 10,第二个线程从 11 加到 20.第十个线程从 91 加到100,最后再把十个线程结果相加。第 6 章 JavaAPI一、填空题1、在 Java 中定义了两个类来封装对字符串的操作,它们分别是 String_和_StringBuffer_。2、Java 中的操作日期的类有_Date_、_Calendar_、DateFormat_等。3、在程序中若想取得一个 Runtime 实例,则可以调用 Runtime 类的静态方法 getRnutime()_。4、Math 类中用于计算所传递参数平方根的方法是_sqrt()_。5、Java 中专门用于将日期格式化为字符串的类是_DateFormat_。6、Math 类中有两个静态常量 PI 和 E,分别代表数学常量_和_e_。7、Java 中的用于产生随机数的类是_Random_,它位于 java.util_包中。8、String 类中用于返回字符串字符个数的方法是_length()_。9、System 类中所提供的属性和方法都是_静态_的,想要引用这些属性和方法,直接使用 System类调用即可。10、已知 sb 为 StringBuffer 的一个实例,且 sb.toString()的值为 abcde,则执行 sb.reverse()后,sb.toString()的值为_”edcba_”_。博学谷让 IT 教学更简单,让 IT 学习更有效二、判断题1、String 对象和 StringBuffer 对象都是字符串变量,创建后都可以修改。错2、用运算符“=”比较字符串对象时,如果两个字符串的值相同,结果为 true。错3、System 类中的 currentTimeMillis()方法返回一个 long 类型的值。对4、Date、Calendar 以及 DateFormat 类都位于 java.util 包中。错 分别 java.util.Date java.util.Calendarjava.text.DateFormat5、String 类的方法 replace(CharSequence srt1,CharSequence srt2)返回一个新的字符串,它是通过用srt2 替换此字符串中出现的所有 srt1 得到的。对三、选择题。1、先阅读下面的程序片段:CString str=abccdefcdh;String arr=str.split(c);System.out.println(arr.length);程序执行后,打印的结果是几?A、2 个 B、3 个 C、4 个 D、5 个2、以下都是 Math 类的常用方法,其中用于计算绝对值的方法是哪个?CA、ceil()B、floor()C、abs()D、random()3、Random 对象能够生成以下哪种类型的随机数?DA、int B、string C、double D、A 和 C 4、String s=abcdedcba;则 s.substring(3,4)返回的字符串是以下选项中的哪个?C A、cd B、de C、d D、e5、假若 indexOf()方法未能找到所指定的子字符串,则返回以下选项中的哪个?CA、false B、0 C、-1 D、以上答案都不对6、要产生20,999之间的随机整数可以使用以下哪个表达式?B A(int)(20+Math.random()*97)博学谷让 IT 教学更简单,让 IT 学习更有效B.20+(int)(Math.random()*980)C.(int)Math.random()*999D.20+(int)Math.random()*9807、以下 Math 类的方法中,-4.4 通过哪个方法运算后,结果为-5.0?D(C)A.round()四舍五入 B.min()C.floor()小于参数最大整数 D.ceil()大于参数最小整数8、下面的程序段执行后,输出的结果是以下哪个选项?A StringBuffer buf=new StringBuffer(Beijing2008);buf.insert(7,);System.out.println(buf.toString();A、Beijing2008 B、Beijing2008 C、Beijing2008 D、Beijing#2008 9、阅读下面的程序:Apublic class test public static void main(String args)int i;float f=2.3f;double d=2.7;i=(int)Math.ceil(f)*(int)Math.round(d);System.out.println(i);程序执行后,运行结果为以下哪个选项?A、9 B、5 C、6 D、6.1 10、先阅读下面的程序片段:BString str1=new String(java);String str2=new String(java);StringBuffer str3=new StringBuffer(java);对于上述定义的变量,以下表达式的值为 true 的是哪个?A、str1=str2;B、str1.equals(str2);C、str1=str3;D、以上都不对四、程序分析题。阅读下面的程序,分析代码是否能编译通过,如果能编译通过,请列出运行的结果。如果不能编译通博学谷让 IT 教学更简单,让 IT 学习更有效过,请说明原因。代码一:57.0-8.0-58.1-6.1public class A public static void main(String args)System.out.println(Math.abs(-5);System.out.println(Math.ceil(6.6);System.out.println(Math.floor(-7.8);System.out.println(Math.round(-4.9);System.out.println(Math.max(8.1,-8.1);System.out.println(Math.min(6.1,-6.1);代码二:str.length():15str.charAt(0):dlastIndexOf(m):10substring(2,4):feindexOf(g):5public class B public static void main(String args)String s=dfferghuklmbdfd;System.out.println(str.length():+s.length();System.out.println(str.charAt(0):+s.charAt(0);System.out.println(lastIndexOf(m):+s.lastIndexOf(m);System.out.println(substring(2,4):+s.substring(2,4);System.out.println(indexOf(g):+s.indexOf(g);五、简答题 1、String 和 StringBuffer 有什么区别?String 类是不可变类,即字符串值一旦初始化后就不可能改变。StringBuffer 是可变字符串类,类似String 的缓冲区,可以修改字符串的值。2、Date 和 Calender 类有什么区别和联系?博学谷让 IT 教学更简单,让 IT 学习更有效 Date 类用来表示某个特定的瞬间,能够精确到毫秒。而在实际应用中,往往需要把一个日期中的年、月、日等信息单独返回进行显示或处理,这个类中的大部分方法都已被标记过时。Calender 类基本取代了 Date 类,该类中定义了一系列用于完成日期和时间字段操作的方法。Calendar 的 getTime()方法,getTime()返回一个表示 Calendar 时间值的 Date 对象,同时 Calendar有一个 setTime(Date date)方法,setTime()方法接收一个 Date 对象,将 Date 对象表示的时间值设置给 Calendar 对象,通过这两个方法就可以完成 Date 和 Calendar 对象之间的转换。六、编程题请按照题目的要求编写程序并给出运行结果1、编写一个程序,实现字符串大小写的转换并倒序输出,要求如下1)使用 for 循环将字符串“HelloWorld”从最后一个字符开始遍历。2)遍历的当前字符如果是大写字符,就使用 toLowerCase()方法将其转换为小写字符,反之则使用 toUpperCase()方法将其转换为大写字符3)定义一个 StringBuffer 对象,调用 append()方法依次添加遍历的字符,最后调用 StringBuffer 对象的 toString()方法,并将得到的结果输出。2、计算从今天算起,100 天以后是几月几号,并格式化成 xxxx 年 x 月 x 日的形式打印出来。提示:1)调用 Calendar 类的 add()方法计算 100 天后的日期2)调用 Calendar 的 getTime()方法返回 Date 类型对象2)使用 FULL 格式的 DateFormat 对象,调用 format()方法格式化 Date 对象3、利用 Random 类来产生 5 个 2050 之间的随机整数。提示:n-m(n、m 均为整数,na)int sum=b/a;System.out.println(sum);else System.out.println(输入错误);当输入的数字是 8 时,打印输出的结果是 2 。2、以下是使用 FileInputStream 类与 FileOutputStream 类复制文件。阅读以下代码,并将空处填写完整。import java.io.*;class Test2 public static void main(String args)String file1,file2;int ch=0;file1=readme.txt;file2=readme.bak;try FileInputStream fis=new FileInputStream(file1);FileOutputStream fos=new FileOutputStream(file2);int size=fis.available();System.out.println(字节有效数、+size);while(ch=fis.read()!=-1)System.out.write(ch);fos.write(ch);fis.close();fos.close();catch(IOException e)System.out.println(e.toString();五、简答题1、简述流的概念。Java 程序通过流来完成输入和输出,流是输入或输出信息的抽象。流通过 Java 的输入/输出系统与外设连接进行数据通信。流是抽象的对象,具体实现代码在 java.io 包中。2、Java 流被分为字节流、字符流两大流类,两者有什么区别?博学谷让 IT 教学更简单,让 IT 学习更有效 字节流的两个基类是 InputStream 和 OutputStream,字符流的两个基类是 Reader 和 Writer,它们都是 Object 类的直接子类,字节流是处理以 8 位字节为基本单位的字节流类;Reader 和 Writer 类是专门处理 16 位字节的字符流类。3、简要说明管道流。管道流分为管道输入流(PipedInputStream)和管道输出流(PipedOutputStream),通常由一个PipedInputStream 实例对象和一个 PipedOutputStream 实例对象相互连接而实现管道通信,PipedOutputStream 向管道写入数据,PipedInputStream 从管道中读取 PipedOutputStream 写入的数据,管道流主要用来完成线程之间的通信。六、编程题按照题目需求,编写程序并运行1、编写一个程序,分别使用字节流和字符流拷贝一个文本文件。提示:1)使用 FileInputStream、FileOutputStream 和 FileReader、FileWriter 分别进行拷贝 2)使用字节流拷贝时,定义一个 1024 长度的字节数组作为缓冲区,使用字符流拷贝使用使用BufferedReader 和 BufferedWriter 包装流进行包装2、某人在玩游戏的时候输入密码 123456 后成功进入游戏(输错 5 次则被强行退出),要求用程序实现密码验证的过程。提示:1)使用 Sysytem.in 包装为字符流读取键盘输入。2)BufferedReader 对字符流进行包装。调用 BufferedReader 的 readLine()方法每次读取一行。3)在 for 循环判中判断输入的密码是否为“123456”,如果是则打印“恭喜你进入游戏”,并跳出循环,否则继续循环读取键盘输入。4)当循环完毕,密码还不正确,则打印“密码错误,结束游戏”,并调用 System.exit(0)方法结束程序。博学谷让 IT 教学更简单,让 IT 学习更有效第 9 章 GUI(图形用户界面)一、填空题一、填空题1、Java 中,图形用户界面简称_GUI_,它的组件包含在_java.awt_和_javax.swing_这两个包中。2、为了避免实现监听器中定义的所有方法,造成代码的臃肿,在 JDK 中提供了一些_适配器_类,这些类实现了接口所有的方法,但是方法中没有任何代码,属于一种空实现。3、在 Java 中,_Graphics_类相当于一个抽象的画笔对象,使用它可以在组件上绘制图形。4、_事件监听器_负责监听事件源上发生的事件,并对各种事件做出响应处理。5、大部分的 Swing 组件都是_JComponent_类的直接或者间接子类,其名称都是在原来 AWT 组件名称前加上字母 J。6、AWT 事件有多种多样,大致可以分为_窗体事件_、_键盘事件_、_鼠标事件_、_动作事件_等。7、如果点击 Frame 窗口右上角的关闭按钮能将其关闭,那么这个 Frame 窗口添加了_WindowListener_监听器,并实现了监听器的实现了_windowClosing(WindowEvent e)_方法。8、对话框可以分为_模态对话框_和_非模态对话框 _两种。9、每一个容器都有一个默认的布局管理器,如果不希望通过布局管理器对容器进行布局,可以调用容器的_setLayout(null)_方法将其取消。10、创建下拉式菜单需要使用三个组件,分别是_JMenuBar_、_JMenu_和_JMenuItem_。二、判断题。1、容器(Container)是一个可以包含基本组件和其它容器的组件。对博学谷让 IT 教学更简单,让 IT 学习更有效2、可以通过实现 ActionListener 接口或者继承 ActionAdapter 类来实现动作时间监听器。错 3、CardLayout 布局管理器将界面看做一系列卡片,在任何时候只有其中一张卡片是可见的。对4、非模态对话框是指用户需要等到处理完对话框后才能继续与其它窗口进行交互。错 5、JFrame 的默认布局管理器是 FlowLayout。错三、选择题1、下面四个组件中哪一个不是 Component 的子类?DA、Button- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java基础入门 Java 基础 入门 课后 习题 答案
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【快乐****生活】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【快乐****生活】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【快乐****生活】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【快乐****生活】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文