java课后题答案
第1章 Java概述
1.编译java application源程序⽂件将产⽣相应的字节码⽂件,这些字节码⽂
件别的扩展名为.java
2.执⾏⼀个java程序fristapp的⽅法是运⾏java fristapp
3.main()⽅法的返回类型是void
4.在java代码中,public static void main⽅法的参数描述正确的是string
args【】,string【】args
5.内存的回收程序负责释放⽆⽤内存√
6.java体系主要分为java ME,Java SE,JavaEE三⼤块
第2章 Java基础
1.Java语⾔中,下列标识符错误的是 40name
2.java变量中,以下不属于引⽤类型的数据类型是字符型
3.double d= ×
4.C
5.A
6.for循环的⼀般形式为;for(初值;终值;增量),以下对for循环的叙述,
正确的是初值和增量都是赋值语句,终值是条件判断语句
7.当输⼊下⾯选项中3值时,将会输出default
8.下⾯哪种⽅法能够⽀持javadoc命令/**…*/
9.下⾯声明⼀个string类型的数组正确的是string str[]
10.下⾯定义⼀个整型数组,不合法的是int[][]array=new int[][4];
11.给定代码;。。。。。下⾯叙述正确的是输出的结果为:0
12.java语⾔规定,标⽰符只能由字母,数字美元符$和下划线租成,并且第⼀
个字符不能是数字;java是区分⼤⼩写的。
13.表达式1/2*3的计算结果是0;设x=2,则表达式(x++)/3的值是0
14.数组的长度可以⽤其属性lengt h获得;创建⼀个数组对象可以使⽤new关键
字创建
第3章⾯向对象基础
1.在java中引⽤对象变量和对象间有什么关系引⽤变量是指向对象的⼀个指针
2.对象是⾯向对象技术的核⼼所在,在⾯向对象程序设计中,对象是累的抽象×
java面向对象的特征有哪些方面3.构造⽅法何时被调⽤创建对象时
4.A,B,D
5.在java语⾔中在包p1中包含包p2,类A直接⾪属于p1,类B直接⾪属于包p2.在类c 中要使⽤类a的⽅法和类b的⽅法b,需要选择import p1.*; import ,*;
6.java中,访问修饰符限制最⾼的是private
第4章类之间的关系
1.在java中,下⾯关于类的描述正确的是⼀个⽗类可以有多个⼦类
2.在java语⾔中,类worker是类person的⼦类,worker的构造⽅法中有⼀
句“super()”,该语句是调⽤person的构造法法。
3.下列final修饰符不允许⽗类被继承。
4.在java中,在类中定义两个或多个⽅法,⽅法名相同⽽参数不同,这称为⽅法重载
5.Derived derived=new Base():×
6.public void method_1(int e,int f)√
第5章抽象类、接⼝和内部类
1.下列abstract修饰符⽤来定义抽象类
2.final类不但可以⽤来派⽣⼦类,也可以⽤来创建final类的对象
3.有错误,Mine必须声明成abstract的
第6章异常
1.Throwable类是下⾯那两个类的直接⽗类Error,Exception
2.Object类是Throwable类的⽗类
3.NullPointerException属于⾮检查型异常的类
4.⽤于⽅法声明抛出异常类型的关键字是throws
5.throws关键字⽤来表明⼀个⽅法可能抛出的各种异常
6.能单独和finally语句⼀起使⽤的快是try
7.可以使⽤return关键词跳出来⼀个try快⽽进⼊finally块
8.B,C,D
9.下列类在多重catch中同时使⽤时,Exception异常类应该最后列出
第7章泛型和集合
1.D
2.下⾯不是继承⾃Collection接⼝的是HashMap
3.下⾯⽤于创建动态数组的集合类是ArraryList
4.向ArraryList对象中添加⼀个元素的⽅法是add(Object o)
5.List myList=new ArrayList()√
第8章类与⽂件
1.改变当前⽬录,返回⽗⽬录的名称,删除⽂件属于File类的功能
2.当编译上述代码的的时候出现⼀个编译错误
3.下列类中由InputStream类直接派⽣出的是ObjectInputStream
4.void flush()⽅法不是InputStream的⽅法
5.下列InputStream类可以作为FilterInputStream的构造⽅法的参数
第9章 JDBC
1.以下代码⾏的功能是为MS-SQL服务器数据库加载驱动程序
2.为维护不同数据库所创建的驱动器列表,使⽤JDBC-ODBC桥接
3.C
第10章 Swing
1.Swin g组件位于包中
2.下⾯流布局布局管理是居中放置组件,当同⼀⾏超出容器宽度后才会从新⾏
开始放置组件。
3.使⽤边界布局管理器时,中间区域会⾃动垂直调整⼤⼩,⽽不在⽔平⽅向上
调整
4.利⽤边界布局,向容器中添加⼀个组件,其中容器⽤cont表⽰,组件⽤comp
表⽰,书写代码的⽅式是(comp,;
5.窗体和⾯板容器默认布局分别是边界布局,流布局
6.下⾯不是容器组件的是JList
7.下⾯代码中,设置容器的布局为空的正确语句是setLayout(null)
8.JButton的⽗类是AbstractButton
9.事件监听接⼝中的⽅法的返回值是void
10.在java中,要处理Button类对象的事件,以下ActionListener是可以处理
这个事件的借⼝。
11.要判断关闭窗⼝的事件,应该添加窗⼝
12.“按钮被单击”
13.下⾯getSource()⽤于获取事件源
第11章 Swing(2)
1.⽤于创建菜单项的类是JMenuItem
2.下⾯选项中,⽤于显⽰确认对话框的⽅法是showConfirmDialog
3.下⾯JTree组件⽤于以层次结构显⽰数据
4.A
5.A
6.⽤于⽂件打开或保存时显⽰的对话框类是JFileChooser,该类中的
showOpenDialog⽅法⽤于显⽰⼀个⽂件打开对话框,showSaveDialog⽅法⽤于显⽰⼀个⽂件保存对话框7.JColorChooser类是颜⾊选择器
第12章线程
1.下⾯Thread是线程类
2.要建⽴⼀个线程,可以从下⾯Runnable接⼝继承
3.下⾯让线程休眠1分钟正确的⽅法是sleep(60000)
4.列举让线程处于不运⾏的状态的⽅法sleep(),wait(),yield()
5.线程同步的关键字synchronized
问答部分
第⼀章
1、简单列举Java语⾔的特点
答:(1)简单性(2)⾯向对象性(3)分布式(4)健壮性(5)跨平台性(6)⾼性能(7)多线程(8)动态性
2、Java应⽤程序分为⼏类各有什么特点
答:两类:Applications(Java应⽤程序)和Applet(Java⼩程序)
特点:Applications是指在计算机操作系统中运⾏的程序。使⽤Java创建应⽤程序与使⽤其他任何计算机语⾔相似,这些应⽤程序可以基于GUI或命令⾏界⾯。Applet是为在Internet上⼯作才创建的Java⼩程序,通过⽀持Java的浏览器运⾏,Applet可以使⽤任何Java开发⼯具创建,但必须被包含或嵌⼊到⽹页中,当⽹页显⽰浏览器上后,Applet就被加载并执⾏。
3、⾯向对象的特征有哪些⽅⾯,并分别简要解释。
答:(1)封装:抽象就是忽略⼀个主题中与当前⽬标⽆关的那些⽅⾯,以便更充分地注意与当前⽬标有关的⽅⾯。抽象并不打算了解全部问题,⽽只是选择其中的⼀部分,暂时不⽤部分细节。
(2)继承:继承是⼀种联结类的层次模型,并且允许和⿎励类的重⽤,它提供了⼀种明确表述共性的⽅法。对象的⼀个新类可以从现有的类中派⽣,这个过程称为类继承。新类继承了原始类的特性。派⽣类可以从它的基类那⾥继承⽅法和实例变量,并且类可以修改或增加新的⽅法使之更适合特殊的需要。
(3)抽象:封装是把过程和数据包围起来,对数据的访问只能通过已定义的界⾯。⾯向对象计算始于这个基本概念。
(4)多态:多态性是指允许不同类的对象对同⼀消息作出响应。多态性语⾔具有灵活、抽象、⾏为共享、代码共享的优势,很好的解决了应⽤程序函数同名问题。
4、简述JVM、JRE和JDK的概念及三者关系。
答:(1)JVM(Java虚拟机)是可运⾏Java字节码(.class⽂件)的虚拟计算机系统;JRE(Java运⾏环境)是运⾏Java程序所必须的环境的集合,JRE包括Java虚拟机、Java平台核⼼类和⽀持⽂件;JDK(Java开发⼯具包)是针对Java 开发⼈员的开发⼯具集合。
(2)JVM、JRE和JDK从范围上讲是从⼩到⼤的关系。
第⼆章
1、swtich是否能作⽤在byte上,是否能作⽤在long上,是否能作⽤在String 答: switch ( expr1 )中, expr1 是⼀个整数表达式。因此 switch 能作⽤于byte 上。 long,string 都不能作⽤于 swtich 。
第三章
1、构造⽅法与⼀般⽅法有何区别
答:构造⽅法区别于其他⽅法的地⽅是它的名字必须与其所在的类的名字相同,且没有返回类型。
第四章类之间的关系
1,什么叫多态,如何理解多态
2,overload和override的区别overloaded的⽅法是否可以改变返回值的类型3.构造器constructor是否可被override
第五章抽象类接⼝
简述抽象类,接⼝的异同
抽象类和接⼝
相同点: (1) 都可以被继承 (2) 都不能被实例化 (3) 都可以包含⽅法声明(4) 派⽣类必须实现未实现的⽅法
区别:1 接⼝可以被多重实现,抽象类只能被单⼀继承 2抽象类是从⼀系列相关对象中抽象出来的概念,因此反映的是事物的内部共性;接⼝是为了满⾜外部调⽤⽽定义的⼀个功能约定,因此反映的是事物的外部特性 3抽象类有⾮抽象的⽅法和构造⽅法,并且修饰符可以是私有的,接⼝只能是抽象的⽅法,并且修饰符是public 4 如果抽象类实现接⼝,则可以把接⼝中⽅法映射到抽象类中作为抽象⽅
法⽽不必实现,⽽在抽象类的⼦类中实现接⼝中⽅法5 抽象类是⼀个不完整的类,需要进⼀步细化,⽽接⼝是⼀个⾏为规范。6抽象类可以有普通成员变量,接⼝不⾏;
第六章异常
1 什么是检查型异常,⾮检查型异常
检查型异常:指编译器要求必须处置的异常,是程序运⾏时由于外界因素造成的⼀般性异常
⾮检查型异常:指编译器不要求强制处理的异常,该异常是因设计或实现⽅式不当导致的,可以避免这种异常的发⽣.
2 简述java异常处理机制
java提供了两种处理异常的机制,⼀是捕获异常,⼆是声明抛出异常.
在java运⾏过程中系统得到⼀个异常对象时,它会沿着⽅法的调⽤栈逐层回溯,寻处理这个异常的代码,,到后,系统把当前异常对象教给这个⽅法处理,这就是捕获异常.如果⽅法中不知道如何处理所出现的异常,则可在定义⽅法时,声明抛出异常.
第七章
1简述⼀下使⽤泛型有什么优点
答:泛型的本质是参数化类型,也就是说所操作的数据类型被指定为⼀个参数。这种参数类型可以⽤在类、接⼝和⽅法的创建中,分别称为泛型类、泛型接⼝、泛型⽅法。 Java语⾔引⼊泛型的好处是安全简单。泛型的好处是在编译的时候检查类型安全,并且所有的强制转换都是⾃动和隐式的,提⾼代码的重⽤率。2.简要描述ArrayList,Vector,LinkedList的存储性能和特性
答:ArrayList⽀持可随需要⽽调整的动态数组。其内部封装了⼀个动态再分配的Object[]数组。每个ArrayList对象有⼀个capacity,表⽰存储列表中元素的数组的容量。当元素添加到ArrayList时,它的capacity⾃动增加。在向⼀个ArrayList对象添加⼤量元素的程序中,可使⽤ensureCapacity()⽅法增加Capacity,此法可以减少或增加重分配的数量。Vector 由于使⽤了synchronized ⽅法(线程安全),通常性能上较ArrayList 差,⽽LinkedList 使⽤双向链表实现存储,按序号索引数据需要进⾏前向或后向遍历,但是插⼊数据时只需要记录本项的前后项即可,所以插⼊速度较快。
3.简述Collection和Collections的区别。
答:是⼀个集合接⼝集合接⼝集合接⼝集合接⼝。它提供了对集合对象进⾏基本操作的通⽤接⼝⽅法。Collection接⼝在Java 类库中有很多具体的实现。Collection接⼝的意义是为各种具体的集合提供了最⼤化的统⼀操作⽅式。
是⼀个包装类。它包含有各种有关集合操作的静态静态静态静态多态⽅法多态⽅法多态⽅法多态⽅法。此类不能实例化不能实例化不能实例化不能实例化,就
像⼀个⼯具类个⼯具类个⼯具类个⼯具类,服务于Java的Collection框架。Java代码。
4、List、Map和Set三个接⼝,存取元素时,各有什么特点
答:List 以特定次序来持有元素,可有重复元素。
Set ⽆法拥有重复元素,内部排序。
Map 保存key-value值,value可多值。
5、描述HashMap和Hashtable的区别。
答:Hashtable和HashMap类有三个重要的不同之处。第⼀个不同主要是历史原因。Hashtable是基于陈旧的Dictionary类的,HashMap是Java 引进的Map接⼝的⼀个实现。
最重要的不同是Hashtable的⽅法是同步的,⽽HashMap的⽅法不是
只有HashMap可以让你将空值作为⼀个表的条⽬的key或value。HashMap中只有⼀条记录可以是⼀个
空的key,但任意数量的条⽬可以是空的value。这就是说,如果在表中没有发现搜索键,或者如果发现了搜索键,但它是⼀个空的值,那么get()将返回null。如果有必要,⽤containKey()⽅法来区别这两种情况。
第⼋章:流与⽂件
⼀、Java中按照流的流向可分为⼏种,举例说明按照流的⾓⾊分为⼏种,举例说明按照流处理数据单位的⼤⼩(字节或字
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论