合肥工业大学宣城校区JAVA作业问答题.docx
- 文档编号:29861153
- 上传时间:2023-07-27
- 格式:DOCX
- 页数:10
- 大小:21.48KB
合肥工业大学宣城校区JAVA作业问答题.docx
《合肥工业大学宣城校区JAVA作业问答题.docx》由会员分享,可在线阅读,更多相关《合肥工业大学宣城校区JAVA作业问答题.docx(10页珍藏版)》请在冰豆网上搜索。
合肥工业大学宣城校区JAVA作业问答题
第一章
1.Java语言有哪些特点?
答:
Java语言的特点有:
简单性、面向对象技术、分布性、健壮性、安全性、体系结构中立、可移植性、解释执行、高性能、多线程
2.Java平台是什么?
其运行原理与一般的操作平台有何不同?
答:
Java平台是Java虚拟机(JVM),用来解释执行字节码文件。
Java程序不受操作平台的限制,可以应用在各种计算机平台上。
因为Java源程序经过编译生成字节码文件,它与平台无关,无论是Windows,MacOS或UNIX,只要计算机安装了能解释执行字节码文件的Java虚拟机就可以执行了。
3.何为字节码?
采用字节码的最大好处是什么?
答:
Java源程序经过编译产生的代码称为字节码,它不能执行,必须由Java虚拟机解释执行。
采用字节码的最大好处是可以跨平台运行。
当Java程序需要在不同的系统上执行时,程序员不需要修改程序,只要使用不同的即可运行,从而实现了Java的平台无关性。
4.如何建立和运行Java程序?
答:
首先,启动自己熟悉的文本编辑器,编辑源程序代码,并以.java为扩展名保存。
接着,进入MS-DOS命令提示符,使用编译命令javac编译源程序,生成扩展名为.class的字节码文件(类文件)。
最后,使用命令java运行字节码文件,得到程序的运行结果。
第二章
1.简述Java语言对于标识符定义有哪些要求?
试述下面几个标识符哪些是对?
哪些是错的?
(1)intchar;
(2)char;(3)floatfLut;(4)byteCy%ty=12345;
(5)doubleDou_St;(6)String(key);(7)long$123=123456L;
(8)booleanaa=123.45
答:
标示符即由一个字母或者一串以字母开头由字母、数字或符号组成的字符串。
要求有:
①符号只允许下划线_和美元$符号,名字长度不限;
②标示符的第一个字母不能是数字字符;
③注意英文字母大小写代表不同含义;
④标示符不能是关键字,不能是true、false和null。
对的标示符有:
(3)(5)(7);
错的标示符有:
(1)
(2)(4)(8)
2、下面这些是常量吗?
是什么类型常量?
true,-66,042,N,‘//’,0L,0xa1,“//”s
答:
整型常量:
-66,042,0L,0xa1
逻辑常量:
true
字符型常量:
“//”
3.什么是变量?
变量名与变量值有什么本质区别?
答:
变量是指程序运行中其值可以改变的量。
变量名是用户定义的一个标识符,变量的值是存储在系统中的值。
4.若已知x=5,y=9,z=0,f=true;计算下列z的值。
(1)z=z+y*x++
(2)z=x>y&&f(3)z=y+++x(4)z=y+x++
(5)z=~x(6)z=x f(7)z=x^y(8)z=< 答: (1)46; (2)false; (3)14; (4)14; (5)6; (6)true; (7)12; (8)2。 5.什么是表达式? 什么是语句? 答: 表达式是用运算符把操作数(变量、常量和方法)连接起来表达某种运算或含义的式子。 语句是构成程序的基本单位,语句具有独立完整的含义,可以对计算机发出操作命令,每一条语句都必须以分号;作为结束符。 第三章 1、试说明while和do…while语句的差异? 答: 在while循环刚开始时,会计算一次“条件表达式”的值。 ①当条件为假时,将不执行循环体,直接跳转到循环体外,执行循环体外的后续语句; ②当条件为真时,便执行循环体。 每执行完一次循环体,都会重新计算一次条件表达式,当条件为真时,便继续执行循环体,直到条件为假才结束循环。 do-while循环与while循环的不同在于: ①它先执行循环中的语句,然后再判断条件是否为真,如果为真则继续循环; ②如果为假,则终止循环。 因此,do-while循环至少要执行一次循环语句。 第四章 1、除了Array之外,Java还有其他哪些“容器”可以存放对象? 简述它们的异同。 (List、Set、Map、ArrayList、Vector、HashTable等) 答: Java存放对象的“容器”除了Array外还有: List: 次序是List最重要的特点;它确保维护元素特定的顺序。 一个List可以生成ListIterator,使用它可以从两个方向遍历List,也可以从List中间插入和删除元素。 Set: 存入Set的每个元素必须是唯一的,因为Set不保存重复元素。 Map: 维护label和value的关联性,使得可以通过label查找value。 ArrayList: 由数组实现的List。 它允许对元素进行快速随机访问,但是向List中间插入与移除元素的速度很慢。 Vector: Vector非常类似ArrayList,但是Vector是同步的。 HashTable: Hashtable继承Map接口,实现一个key-value映射的哈希表。 任何非空(non-null)的对象都可作为key或者value。 第五章 1、什么是对象? 如何创建对象? 答: 类声明的变量称为对象。 创建一个对象包括对象的声明和为声明的对象分配内存两个步骤。 2、什么是构造方法? 构造方法有哪些特点? 答: 构造方法是一个类方法中方法名与类名相同的类方法,它的作用是当使用new关键字创建一个对象时,自动调用并对新建对象进行初始化操作。 构造方法的特点: ①构造方法与类名相同; ②构造方法没有返回值,不定义返回类型; ③构造方法可以重载,针对参数数量和类型定义多个同名构造方法; ④构造方法可以继承,子类可以继承父类的构造方法; ⑤构造方法不能由编程人员显式地直接调用,它是在对象创建时由new运算符自动的; ⑥构造方法只用来对类实例进行初始化,目的在于简化初始化操作。 3、什么是类的封装? 如何对成员变量和方法的访问权限的设置达到数据封装的目的? 答: 类的封装是指类的设计者为使用者提供类对象可以访问的部分,而对类中其余的成员变量和方法隐藏起来,用户违法访问。 可以通过public、protected、private、默认四中控制符来实现数据封装的目的。 4、子类能够继承父类的哪些成员变量和方法? 答: 子类能够继承父类public、protected成员变量和方法。 第六章 1、多态中的重载与覆盖有什么不同? 答: 重载是指在类中创建多个方法,它们具有相同的名称但有不同的参数和不同的实现; 覆盖则指子类对父类同名方法的重定义,其方法名同而内容不同。 2、静态方法与非静态方法的区别? 答: 在方法声明中用关键字static修饰的方法称为静态方法,不用static修饰的方法叫非静态方法: ①静态方法只能对静态变量进行操作,而非静态方法可以对静态变量和非静态变量操作; ②静态方法可以由对象调用也可以由类名直接调用,而非静态方法只能由对象调用; ③一个类中的方法可以相互调用,但静态方法只能调用静态方法,不能调用非静态方法; ④创建对象之前,非静态方法没有入口。 3、final成员变量和方法有什么特点? 答;final变量一般在声明时进行初始化,一但final变量被赋值,则在整个程序执行过程中都不能被改变; Final方法不能被重载。 第八章 1、如何来制作图形界面? 它需要引入哪些包 答: 需要先创建一个可视化的窗口,然后添加各种组件,并设置各组件的属性及在窗口中的位置,然后再定义图形界面中的事件及组件对不同事件的响应。 它需要引入的包有: AWT,Swing。 2、在java中,什么是事件? 简述处理事件的机制。 答: 事件是指事件源产生的交互内容。 处理事件的机制: 事件源通过触发事件产生一个事件对象,事件对象传递参数并调用监听器相应的方法。 3、什么是布局管理器,它有什么作用? 答: 布局管理器是一个用来管理和安排其他组件在窗口界面位置的对象。 4、请说明FlowLayout布局方式的特点? 答: FlowLayout的布局策略是将容器中的组件按照加入的先后顺序从左向右排列。 如果一行排满转下一行继续,每行均采取居中排列。 5、GridLayout布局的特点有哪些? 答: 使用CardLayout的容器可以容纳多个组件,但是实际上同一时刻容器只能从这些组件中选出一个来显示,就像一叠“扑克牌”每次只能显示最上面一张一样,这个被显示的组件将占据所有的容器空间,依次排序。 第九章 1、何为流? 根据流的方向,流可分为哪两种? 答: 流是在计算机的输入、输出操作中流动的数据序列。 按流动方向分为输入流和输出流。 2、InputStream,OutputStream,Reader和Writer类的功能有何异同? 答: Reader和Writer用于字符流的读取和写入,也就是说读取和写入的单位是字符。 Reader类用来以字符方式从流中读入数据。 Writer类用来以字符方式向输出流中写入数据。 InputStream和OutputStream是表示输入和输出字节流的所有类的超类。 InputStream类中包含了一套所有输入流都需要的方法,可以完成最基本的从输入流读取数据的功能。 OutputStream类中包含所有输出流都要使用的方法。 第十章 1、何为异常? 为什么要进行异常处理? 答: 异常是指程序运行过程中出现的非正常。 良好的应用程序除了具备用户所要求的功能外还应该具备预见性并处理可能发生的各种各种异常功能。 2、Error和Exception类有何不同? 答: Exception类解决由程序本身及环境所产生的异常。 Error类处理内部系统错误。 Exception类异常可以被捕获并进行处理,而对Error类异常,程序员通常无能为力,只能在其发生时由用户按照系统提示关闭程序。 3、什么是抛出异常? 如何抛出异常? 答: 抛出异常是java中一个程序处理动作。 如果一个方法没有捕获可能引发的异常,调用该方法的其他方法应该捕获并处理异常。 程序员可以在程序中通过throw语句抛出异常 第十一章 1、什么是TCP/IP协议? 它有什么特点? 答: TCP是Internet的基础和核心,一个基于连接的协议,提供两台计算机之间的可靠的数据流。 TCP/IP协议具有以下的几个特点: 1.开放的协议标准,可以免费使用,并且独立于特定的计算机硬件与操作系统。 2.独立于特点的网络硬件,可以运行在局域网,广域网,更适用于互联网中。 3.统一的网络地址分配方案,使得整个TCP/IP设备在网中都具有唯一的地址。 4.标准化的高层协议,可以提供多种可靠的用户服务。 2、简述URL与Socket通信的区别。 答: ①通信方式: Socket在服务器端运行通信程序,不停地监听客户端的连接请能够使通信发求,等待客户端请求服务当客户端提出请求时,马上连接并通信; URL进行通信时,被动等待客户端的请求。 ②连接数 Socket服务器可以同时与多个客户端进行相互通信; URL通信方式是服务器只能与一个客户端进行通信。 3、简述Socket通信机制,说明客户端如何与服务器进行连接。 答: Socket通信机制: 当程序需要建立网络连接时,必须有一台机器运行一个程序,随时等候连接,而另一端的程序则对其发出连接请求,同电话系统类似。 建立连接的过程: ①服务器端生成一个ServerSocket实例对象,随时监听客户端的连接请求 ②客户端生成一个Socket实例对象,并发出连接请求 ③服务器端通过accept()方法接收到客户端的请求后,开辟一个接口与之进行连接,并生成所需的I/O数据流 ④通信都是通过一对InputStream()和OutputStream()进行的。 通信结束后,两端分别关闭对应的Socket接口 4、说明并尝试通过URL连续从服务器上读取一个文本文件,并显示该文本文件的内容。 答: 实例化URL对象->实例化URLConnection对象->实例化InputStreamReader对象->实例化BufferReader对象 第十二章 1、何为线程和多线程? 如何建立多线程? 答: 线程是一个程序内部的顺序控制流。 多线程是在同一应用程序中有多个顺序控制流“同时”执行。 创建线程有两种方法: ①继承Thread类 ②通过定义实现Runnable接口 2、线程的生命周期由哪几种状态? 各状态之间分别用哪些方法切换? 答: 线程的生命周期有就绪、可运行、不可运行、终止四中状态。 就绪->可运行: start() 可运行->可运行: yield() 可运行->不可运行: sleep()、wait() 不可运行->可运行: 阻塞解除、睡眠时间终止、唤醒 可运行->终止: run() 3、Java程序实现多线程有哪些途径? 答: Java多线程实现方式主要有三种: 继承Thread类、实现Runnable接口、使用ExecutorService、Callable、Future实现有返回结果的多线程。 其中前两种方式线程执行完后都没有返回值,只有最后一种是带返回值的。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 合肥 工业大学 宣城 校区 JAVA 作业 问答题