ImageVerifierCode 换一换
格式:DOCX , 页数:35 ,大小:94.20KB ,
资源ID:6856406      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6856406.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Java程序设计之网络编程基础教程习题及思考题答案.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

Java程序设计之网络编程基础教程习题及思考题答案.docx

1、Java程序设计之网络编程基础教程习题及思考题答案第一章 习题及思考题1、 Java程序是由什么组成的?一个程序中必须有public类吗?Java源文件的命名规则是怎样的? 答:一个Java源程序是由若干个类组成。一个Java程序不一定需要有public类:如果源文件中有多个类时,则只能有一个类是public类;如果源文件中只有一个类,则不将该类写成public也将默认它为主类。源文件命名时要求源文件主名应与主类(即用public修饰的类)的类名相同,扩展名为.java。如果没有定义public类,则可以任何一个类名为主文件名,当然这是不主张的,因为它将无法进行被继承使用。另外,对Applet

2、小应用程序来说,其主类必须为public,否则虽然在一些编译编译平台下可以通过(在BlueJ下无法通过)但运行时无法显示结果。 2、怎样区分应用程序和小应用程序?应用程序的主类和小应用程序的主类必须用public修饰吗? 答:Java Application是完整的程序,需要独立的解释器来解释运行;而Java Applet则是嵌在HTML编写的Web页面中的非独立运行程序,由Web浏览器内部包含的Java解释器来解释运行。 在源程序代码中两者的主要区别是:任何一个Java Application应用程序必须有且只有一个main方法,它是整个程序的入口方法;任何一个Applet小应用程序要求程序

3、中有且必须有一个类是系统类Applet的子类,即该类头部分以extends Applet结尾。 应用程序的主类当源文件中只有一个类时不必用public修饰,但当有多于一个类时则主类必须用public修饰。小应用程序的主类在任何时候都需要用public来修饰。 3、开发与运行Java程序需要经过哪些主要步骤和过程? 答:主要有三个步骤 (1)、用文字编辑器notepad(或在Jcreator,Gel, BuleJ,Eclipse, Jbuilder等)编写源文件; (2)、使用Java编译器(如Javac.exe)将.java源文件编译成字节码文件.class; (3)、运行Java程序:对应用

4、程序应通过Java解释器(如java.exe)来运行,而对小应用程序应通过支持Java标准的浏览器(如Microsoft Explorer)来解释运行。 4、安装JDK之后如何设置JDK系统的PATH,CLASSPATH?他们的作用是什么? 答、更新系统PATH的方法随Windows版本不同而不同。对于Windows 95/98,可以将下列项目作为C:autoexec.bat文件的最后一行: SET PATH = C:;%PATH% 当程序需要第三方的类库支持, 而且比较常用, 就可以采用此种方法.比如常用的数据库驱动程序, 写 servlet 需要的 servlet 包等等. 设置方法就是在

5、环境变量中加入 CLASSPATH. 然后就可以直接编译运行了.Java运行环境从CLASSPATH环境变量中寻找要执行的用户项目(三方的类库)。可以按如下的方式设置 SET CLASSPATH=.;C:;%CLASSPATH% 通常我们要从当前目录中寻找用户类,因为开发的程序相关的类放在这里,. 表示当前工作目录. 5、Java语言特点是什么? 答:Java是一种简单的面象对象的分布式的解释的健壮的安全的结构中立的可移植的性能很优异的多线程的动态的语言。 6、简述面向过程问题求解和面向对象问题求解的异同。试列举出面向对象和面向过程的编程语言各两种。 解:面向过程问题求解利用计算机能够理解的离

6、散逻辑来描述和表达所求解的问题本身以及具体问题解决的过程,它的核心是算法和数据结构,面向对象的问题求解则利用符合人们日常思维习惯的方式去模拟所求解的问题,模拟它的构成、特征和各种动态行为,从而得到问题的解答。它的核心是类、对象和设计模式。 常见的面向过程的编程语言有BASIC,FORTRAN,Pascal, C等。常见的面向对象的编程语言有Smalltalk-80,Object Pascal, C+, Java等。第二章 习题及思考题 1. 试分析基本数据类型和引用数据类型的基本特点? 答:Java的基本数据类型都有固定的数据位,不随运行平台的变化而变化。 引用类型都是用类或对象实现的 2.

7、请使用异或运算符, 实现两个整数的交换。 答:int x=5,y=19; x=xy; y=yx; x=xy; 3. 下列哪个是合法的标识符:( )。 A、a=b B、_Hello C、2nd D、Chong qing 答:B 4. 下列哪些是合法的标识符()。 A、new B、class C、int D、const2 答:D 5. 如果定义有变量double d1, d2=4.0则下列说法正确的是: A、变量d1,d2均初始化为4.0 B、变量d1没有初始化,d2初始化为4.0 C、变量d1,d2均未初始化 D、变量d2没有初始化,d1初始化为4.0 答:B 6. 判断题:所有的变量在使用前都

8、必须进行初始化。( ) 答:正确。 7. 内部数据类型byte的取值范围是:( ) A、065, 535 B、(-128)127 C、(-32,768)32,767 D、(-256)255 答:B 8. 下列哪些是不能通过编译的语句:( ) A、int i = 32; B、float f = 45.0; C、double d = 45.0; D、char a=c; 答: B 9. 判断题:Java中数据类型的长度与具体使用的机器相关。( ) 答:错误。 10. 如果定义有double x;float y;int m,则表达式x*y-m的类型为( ): A、double B、float C、in

9、t D、short 答:A 11. 如果定义有short s;byte b;char c,则表达式s*b+c的类型为( ): A、char B、short C、int D、byte 答:C 12. 已知int i= 47; +i; 则i的值等于多少( ) A -48 B 47 C 48 答:A 13. 已知byte i= 127; +i; 则i的值等于多少( ) A -128 B 127 C 128 答:A 14. 已知byte i= 127; i=i+1;这两行语句能否编译成功?( ) 答:编译不成功。 15. 执行以下程序段int a=5,b; b=+a*3后b的值为:( ) A、17 B

10、、18 C、16 D、15 答: B 16. 如果x=3,y=5,则表达式x|y的值为:( ) A、15 B、8 C、1 D、7 答:D 17. 如果int a=3,b=2,则执行a*=b+8后a的值为:( ) A、20 B、14 C、30 D、16 答:C 18. 若所用变量都已正确定义,以下选项中,非法的表达式是:( ) A、a!=4|b=1 B、a%3 C、a=1/2 D、A+32 答:C 19. 设有定义语句int a=1,1,2; 则以下对此语句的叙述错误的是( )。 A、定义了一个名为a的一维数组 B、a数组有3个元素 C、a数组的下标为13 D、数组中的每个元素是整型 答:C 2

11、0. 以下数组初始化形式正确的是:( ) A、int t1=1,2,3,4,5,6 B、int t2=1,2,3,4,5,6 C、int t332=1,2,3,4,5,6 D、int t4;t4=1,2,3,4,5,6 答:A 第三章 习题及思考题 1、编写一个程序,用选择法对数组a=20,10,55,40,30,70,60,80,90,100进行从大到小的排序 解: public class ArraySort public static void main(String args) int array=20,10,55,40,30,70,60,80,90,100; int i,j,k,t;

12、 int m=array.length; for(i=0;im-1;i+) k=i; for(j=i+1;jm;j+) if(arrayjarrayk) k=j; t=arrayk;arrayk=arrayi;arrayi=t; for(i=0;iarray.length;i+) array+i+=+arrayi); 2、求两个整数的最大公约数 解public class Gcd_do public static void main(String args) int a=45,b=21,k=0; Gcd(+a+,+b+)=); do k = a % b; a = b; b = k; while

13、 (k!=0); ; 3、请打印出如下九九乘法表 * | 1 2 3 4 5 6 7 8 9 -|- 1 | 1 2 | 2 4 3 | 3 6 9 4 | 4 8 12 16 5 | 5 10 15 20 25 6 | 6 12 18 24 30 36 7 | 7 14 21 28 35 42 49 8 | 8 16 24 32 40 48 56 64 9 | 9 18 27 36 45 54 63 72 81 解: public class MultiTable public static void main(String args) int i,j,n=9; * |); for (i=1

14、;i=n;i+) +i); n-|); for (i=1;i=n;i+) -); ; for (i=1;i=n;i+) +i+ |); for (j=1;j=0?disc:-disc; p2=Math.sqrt(absdisc)/(2.0*a); if(disc0.0) Complex roots:+p1+or-+p2+i); else x1=p1+p2; x2=p1-p2; First Real roots:+x1); Second real roots:+x2); / endfor 5、求前40个Fibonacci数列。 Fibonacci数列:1,1,2,3,5,8,13,21,34,

15、从数列看到:F1=1 (n=1) F2=1 (n=2) Fn=Fn-1+Fn-2 (n3) 解: public class Fibonacci public static void main(String args) long f1,f2; int i; f1=1; f2=1; (f1+ +f2); for (i=3;i=20;i+) f1=f1+f2; f2=f1+f2; (f1+ +f2); 6、已知公鸡5元1只,母鸡3元一只,小鸡1元3只,要求用100元刚好买100只鸡,问有多少种采购方案。 解:public class Loop_Loop3_20 public static void

16、main(String args) int I,J,K; I J K ); for (I=0;I=20;I+ ) / I 为公鸡数 for ( J=0;J0) str=args0; str=+str); n=str.length(); char ch1,ch2; String temp=; for (i=0;in;i+) sub1=str.substring(i,i+1); temp=sub1+temp; temp=+temp); :”+str.equals(temp); 8、求2-1000内的所有素数 class prime public static void main(String ar

17、gs) int sum=0,i,j; for( j=2;j=1000;j+) /求50以内的素数 for( i=2;ij/2) +j+是素数); 9、在一个循环中使用break,continue和return有什么不同? 解:在循环中使用break语句,将使循环终止,流程从break语句处跳转到break语句所在的循环外面的第一个语句继续执行。 在循环中使用continue语句,将提前结束本轮循环,流程跳转到continue语句所在循环的第一个语句继续执行。 在循环中使用return语句,将终止当前方法调用,同时终止循环,使流程返回到调用语句的下一个语句执行。 10、结构化程序设计有哪三种流程

18、?他们分别对应Java中那些语句 解:结构化程序设计有三种基本流程:循环、分支和顺序。Java程序中的分支语句包含if语句、switch语句;循环语句包括了while语句,do-while语句、for语句;其他语句如变量、对象定义、赋值语句、方法调用语句、以及上面的循环结构、分支结构等按照上下文排列都是顺序语句。 第四章 习题及思考题 1.什么是类?什么是对象?对象和类是什么关系? 答:类是抽取了同类对象的共同属性和行为形成的对象或实体的“模板”。 对象是现实世界中实体的描述,是其自身所具有的状态特征及可以对这些状态施加的操作结合在一起所构成的独立实体。 类和对象之间的关系是抽象和具体的关系:

19、类表达的是一种抽象的概念,它描述了该类对象的共同特征;而对象是具体事物,以类为模板来生成,它具有自己的状态。举例:类与对象的关系犹如零件的图纸与按图纸制造出的零件关系一样;图纸(类)描述了零件(对象)的共同特征,每个零件(对象)又有自己的个性,如加工精度的不同等等 2、 什么是方法?方法的结构是怎样的?设计方法应考虑哪些因素? 答:方法是Java类的一个组成部分,通过类的方法改变对象的状态。 方法的结构:方法修饰符 返回值类型 方法名(形参列表)throws异常列表 方法体; 设计方法应考虑因素有: (1) 方法名是Java中任意的标识符,按照命名的约定,方法名应该是有意义的动词或动词短语,它

20、的第一个字母一般要小写,其他有意义的单词的首字母要大写,其余字母小写。 (2) 返回值类型可以是任意的Java类型,甚至可以是定义此方法的类。如果方法没有返回值,则用void表示。 (3) 形式参数列表是可选的。如果方法没有形式参数,就用一对小括号“()”表示。形式参数列表的形式如下: (类型 形参名,类型 形参名,) (4) throws异常列表规定了在方法执行中可能导致的异常。 3.创建一个有两个方法的类,其中第一个方法两次调用第二个方法,第一次不使用this,第二个使用this。 class Rectangle /矩形类 int width; / 矩形的宽 int usethis(int

21、 width) /返回宽度的函数 this. width= width; /指自己这个对象 return width; int unusethis(int width) int w=width; return w; public static void main(String args) Rectangle r=new Rectangle(); /类对象的实例化 It is about the node of this.); /输出语句 ; ; 运行结果: It is about the node of this. 1 2 4、创建一个类,该类还有int和char类型的成员变量且未被初始化,然

22、后编程输出这些成员变量的值,查看java是否执行了默认的初始化操作。 参考答案: public class CuoShiHua int a; /整型变量 char b; /字符型变量 public void show() /用来输出未被初始化的变量的 ; ; public static void main(String args) CuoShiHua c = new CuoShiHua(); /声明类的对象并实例化 c.show(); /函数调用 输出结果: 0 /小方格代表空格 5、创建一个类,该类含有的成员变量和成员方法,创建一个该类的对象,察看当时图访问这些成员时,编译程序会给出那些信息

23、(注意:在同一目录下的类都属于一个默认的包)。 class text1 static int a; /当被定义为static类型时,为类变量,可被对象或类调用 int b; /对象变量,只能被对象调用 public void display(int a,int b) /成员方法 static int a=+a); int b=+b); public static void display(int b) static display: int b=+b); public static void main(String args) text1 tt=new text1(); tt.display(

24、5,6); /text1.display(5,6)是错误的:对象变量或对象方法只能被对象tt调用 text1.display(0); /当被定义为static类型时,为类方法,可被对象或类调用tt.display(23); tt.a=9; text1.a=4; tt.b=3; 运行结果: static int a=5 int b=6 static display: int b=0 static display: int b=23 6、下面给出了一个矩形类Rectangle,其中含有多个构造方法。上机编译并运行此程序,观察运行结果,体会其中不同构造方法的设计和使用。 import java.io

25、.*; class Rectangle /矩形类 private int width; /矩形的宽度 private int length; /矩形的长度 Rectangle() /矩形的不带参数的构造函数,缺省的给出长(30)和宽(20) length=30;width=20; Rectangle(int l,int w) /矩形的带参数的构造函数 length=l;width=w; Rectangle(Rectangle r) /此构造方法以另一个Rectangle作为参数 width=r.width(); /通过对象调用函数并附值给相应变量 length=r.length(); int

26、width() /返回宽度 return width; int length() /返回长度 return length; public class CRctngle public static void main (String args ) Rectangle x1=new Rectangle(); /声明类的对象并实例化 Rectangle x2=new Rectangle(50,40); /声明类的对象并初始化 Rectangle x3=new Rectangle(x1); ; ; ; ; ; ; 运行结果:30 20 50 40 30 20 体会:此程序中共定义了3个构造方法:Rectangle()、Rectangle(int l,int w) 、Rectangle(Rectangle r) ,其中Rectangle()是没有参数的,Rectangle(int l,int w)以常数作为参数,Rectangle(Rectangle r)是以对象最为参数。构造函数的调用实在用new

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1