ImageVerifierCode 换一换
格式:DOCX , 页数:39 ,大小:37.31KB ,
文档编号:5717112      下载积分:20 文币
快捷下载
登录下载
邮箱/手机:
温馨提示:
系统将以此处填写的邮箱或者手机号生成账号和密码,方便再次下载。 如填写123,账号和密码都是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

优惠套餐
 

温馨提示:若手机下载失败,请复制以下地址【https://www.163wenku.com/d-5717112.html】到电脑浏览器->登陆(账号密码均为手机号或邮箱;不要扫码登陆)->重新下载(不再收费)。

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

1: 试题类文档的标题没说有答案,则无答案;主观题也可能无答案。PPT的音视频可能无法播放。 请谨慎下单,一旦售出,概不退换。
2: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
3: 本文为用户(最好的沉淀)主动上传,所有收益归该用户。163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

1,本文(《Java面向对象程序设计》(第2版)课后答案.docx)为本站会员(最好的沉淀)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!

《Java面向对象程序设计》(第2版)课后答案.docx

1、Java 面向对象程序设计(编著耿祥义X 跃平) 习题 11James Gosling 2(1) 使用一个文本编辑器编写源文件。(2) 使用 Java 编译器(javac.exe)编译 Java 源程序,得到字节码文件。(3) 使用 Java 解释器(java.exe)运行 Java 程序3Java 的源文件是由若干个书写形式互相独立的类组成的。应用程序中可以没有 public 类,若有的话至多可以有一个 public 类。4系统环境 pathDjdkbin;系统环境 classpathDjdkjrelibrt.jar;.;5. B6. Java 源文件的扩展名是.java。Java 字节码的

2、扩展名是.class。7. D 8(1)Speak.java(2) 生成两个字节码文件,这些字节码文件的名字Speak.class 和 Xiti8.class(3) java Xiti8(4) 执行 java Speak 的错误提示Exception in thread main java.lang.NoSuchMethodError: main执行 java xiti8 得到的错误提示Exception in thread main java.lang.NoClassDefFoundError: xiti8 (wrong name: Xiti8)执行 java Xiti8.class 得到的

3、错误提示Exception in thread main java.lang.NoClassDefFoundError: Xiti8/class执行 java Xiti8 得到的输出结果Im glad to meet you 9属于操作题,解答略。习题 21. D2. 【代码 1】【代码 2】错误/【代码 3】更正为 float z=6.89F;3. float 型常量后面必须要有后缀“f”或“F”。对于 double 常量,后面可以有后缀“d”或“D”,但允许省略该后缀。 4public class Xiti4public static void main (String args ) ch

4、ar ch1=你,ch2=我,ch3=他;System.out.println(+ch1+的位置:+(int)ch1); System.out.println(+ch2+的位置:+(int)ch2); System.out.println(+ch3+的位置:+(int)ch3);5数组名字.length 6数组名字.length 7【代码 1】A,65【代码 2】-127【代码 3】123456.783,123456.783128【代码 1】false【代码 2】true【代码 3】false【代码 4】3【代码 5】4.4【代码 6】8.8习题 3输出 110if-else 语句书写的不够规

5、X,复合语句缺少大括号“”,代码不够清晰。 2你好好酷!3public class Xiti3_3public static void main (String args ) int startPosition=0,endPosition=0; char cStart=,cEnd=;startPosition=(int)cStart; /cStart 做 int 型转换据运算,并将结果赋值给 startPosition endPosition=(int)cEnd ;/cEnd 做 int 型转换运算,并将结果赋值给endPosition System.out.println(俄文字母表:);f

6、or(int i=startPosition;i=endPosition;i+) char c=0;c=(char)i;/i 做 char 型转换运算,并将结果赋值给c System.out.print( +c);if(i-startPosition+1)%10=0) System.out.println();4public class Xiti4public static void main(String args)double sum=0,a=1; int i=1;while(i=20) sum=sum+a; i+;a=a*i;System.out.println(sum=+sum);5c

7、lass Xiti5public static void main(String args) int i,j; for(j=2;j=100;j+) for(i=2;ij/2) ( +j);6class Xiti6public static void main(String args)double sum=0,a=1,i=1; while(i=20) sum=sum+a; i+;a=(1.0/i)*a;System.out.println(使用 while 循环计算的 sum=+sum);for(sum=0,i=1,a=1;i=20;i+)a=a*(1.0/i); sum=sum+a;Syste

8、m.out.println(使用 for 循环计算的 sum=+sum);7public class Xiti7public static void main(String args)int sum=0,i,j; for(i=1;i=1000;i+)for(j=1,sum=0;ji;j+)if(i%j=0) sum=sum+j;if(sum=i)System.out.println(完数:+i);8方法之一import java.util.Scanner; public class Xiti8public static void main (String args )System.out.pr

9、intln(请输入两个非零正整数,每输入一个数回车确认); Scanner reader=new Scanner(System.in);int m=0,n=0,temp=0,gy=0,gb=0,a,b; a=m = reader.nextInt(); b=n = reader.nextInt();if(mn)t=m; m=n; n=t;for(int i=1;i9999) break;n+;t=n*t;System.out.println(满足条件的最大整数:+(n-1);/ 1 至 7 的阶乘和是 sum=5913.0/ 1 至 8 的阶乘和是 sum=46233.0习 题 4 1用该类创建

10、对象时。2所谓方法重载是在一个类中可以有多个方法具有相同的名字,但这些方法的参数必须不同,即或者是参数的个数不同,或者是参数的类型不同。构造方法可以重载。 3可以。不可以。4. 不可以。5. 成员变量又分为实例变量和类变量,用 static 修饰的变量是类变量。那么类变量和实例变量有什么区别呢?一个类通过使用 new 运算符可以创建多个不同的对象,不同的对象的实例变量将被分配不同的内存空间;如果类中的成员变量有类变量,那么所有对象的这个类变量都分配给相同的一处内存,改变其中一个对象的这个类变量会影响其它对象的这个类变量。也就是说对象共享类变量。6. C,D7. 【代码 1】,【代码 4 】 8

11、sum=-10092710. *20#100习题 51. 如果子类和父类在同一个包中,那么子类自然地继承了其父类中不是private 的成员变量作为自己的成员变量,并且也自然地继承了父类中不是 private 的方法作为自己的方法。继承的成员或方法的访问权限保持不变。如果子类和父类不在同一个包中,那么子类继承了父类的 protected、public 成员变量做为子类的成员变量,并且继承了父类的protected、public 方法为子类的方法,继承的成员或方法的访问权限保持不变。如果子类和父类不在同一个包里,子类不能继承父类的友好变量和友好方法。只要子类中声明的成员变量和父类中的成员变量同名

12、时,子类就隐藏了继承的成员变量。子类中定义一个方法,这个方法的类型和父类的方法的类型一致或者是父类的方法的类型的子类型,并且这个方法的名字、参数个数、参数的类型和父类的方法完全相同,子类如此定义的方法称作子类重写的方法。子类通过方法的重写可以隐藏继承的方法。2. 不可以。3abstract 类。4假设B 类是A 类子类或间接子类,当我们用子类B 创建一个对象,并把这个对象的引用放到A 类的对象中时,称这个A 类对象是子类对象的上转型对象。5可以把实现某一接口的类创建的对象的引用赋给该接口声明的接口变量中。那么该接口变量就可以调用被类实现的接口中的方法。6A,C,D715.08.0898.012

13、9 class Apublic final void f() char cStart=a,cEnd=z; for(char c=cStart;c=cEnd;c+) ( +c);class B extends A public void g() char cStart=,cEnd=; for(char c=cStart;c=cEnd;c+) ( +c);public class Xiti9public static void main (String args ) B b=new B();b.f();b.g();10class Apublic int f(int a,int b) if(ba)i

14、nt temp=0; temp=a;int r=b%a; while(r!=0)b=a;a=b; b=temp;a=r; r=b%a;return a;class B extends Apublic int f(int a,int b)int division=super.f(a,b); return (a*b)/division;public class Xiti10public static void main (String args ) A a=new A();B b=new B();System.out.println(最大公约数:+a.f(36,24); System.out.pr

15、intln(最小公倍数:+b.f(36,24);习 题 6 1仍然有效。2. 可以。3. 不可以。4. 大家好,祝工作顺利!5 96乘数超过 99习题 7 1(1) Strategy 是接口。(2) Army 不是抽象类。(3) Army 和 Strategy 是关联关系。(4) StrategyA, StrategyB、StrategyC 与 Strategy 是实现关系。234. 例子 13 的设计符合开-闭原则。5. 例子 17 的设计符合开-闭原则。习题 8采用新增的策略为选手计算得分。增加新的具体策略 StrategyFour。StrategyFour 类将 double compu

16、teScore(double a)方法实现为去掉数组a 的元素中的一个最大值和一个最小值,然后计算剩余元素的几何平均值。import java.util.Arrays;public class StrategyFour implements ComputableStrategy public double computeScore(double a) if(a.length=2) return 0;double score=0,multi=1;Arrays.sort(a);int n=a.length-2;for(int i=1;ia.length-1;i+) multi=multi*ai;s

17、core=Math.pow(multi,1.0/n); return score;2(1) 策略(Strategy)PrintCharacter.java public interface PrintCharacterpublic abstract void printTable(char a,char b);(2) 具体策略PrintStrategyOne.javapublic class PrintStrategyOne implements PrintCharacter public void printTable(char a,char b) for(int i=0;ia.length

18、;i+) System.out.print(ai+,);for(int i=0;ib.length;i+) System.out.print(bi+,);System.out.println();PrintStrategyTwo.javapublic class PrintStrategyTwo implemPernitnstCharacter public void printTable(char a,char b) for(int i=0;ia.length;i+) System.out.print(bi+,+ai+,);(3)上下文 PrintGame.java public class

19、PrintGame PrintCharacter strategy;public void setStrategy(PrintCharacter strategy) this.strategy=strategy;public void getPersonScore(char a,char b) if(strategy=null) System.out.println(sorry!);else strategy.printTable(a,b);应用以上策略:public class Application public static void main(String args) char a=n

20、ew char26;char b=new char26; for(int i=0;i=25;i+) ai=(char)(a+i);for(int i=0;i=25;i+) bi=(char)(A+i);PrintGame game=new PrintGame(); /上下文对象game.setStrategy(new PrintStrategyOne();/上下文对象使用策略一System.out.println(方案 1:); game.getPersonScore(a,b);game.setStrategy(new PrintStrategyTwo();/上下文对象使用策略二System.

21、out.println(方案 2:);game.getPersonScore(a,b);3参照本章自主完成。习 题 9 1A,B,D2. Love:Game 313abc 夏日41357959javaHello 6public class Xiti6 public static void main (String args ) String s1,s2,s3,t1=ABCDabcd;System.out.println(字符串原来是这个样子: +t1); s1=t1.toUpperCase();System.out.println(字符串中的小写字母变成大写是这个样子: +s1); s2=t1

22、.toLowerCase();System.out.println(字符串中的大写字母变成小写是这个样子: +s2); s3=s1.concat(s2);System.out.println(大写字符串连接小写字符串是这个样子: +s3);7class Xiti7 public static void main(String args ) Strings =中华人民 XX 国; char a=s.charAt(0);char b=s.charAt(6);System.out.println(第一个字符:+a); System.out.println(最后一个字符:+b);8import jav

23、a.util.*; class Xiti8public static void main(String args) int year,month;System.out.println(请输入年份和月份,每输入一个数回车确认); Scanner reader=new Scanner(System.in);year= reader.nextInt(); month= reader.nextInt();String day=new String42; System.out.println( 日一二三四五六); Calendar rili=Calendar.getInstance();rili.set

24、(year,month-1,1);/将日历翻到 year 年 month 月 1 日,注意 0 表示一月.11 表示十二月int 星期几=rili.get(Calendar.DAY_OF_WEEK)-1;int dayAmount=0; if(month=1|month=3|month=5|month=7|month=8|month=10|month=12) dayAmount=31;if(month=4|month=6|month=9|month=11) dayAmount=30;if(month=2) if(year%4=0)&(year%100!=0)|(year%400=0) dayA

25、mount=29;else dayAmount=28;for(int i=0;i星期几;i+) dayi=;for(int i=星期几,n=1;i星期几+dayAmount;i+)if(n=9) dayi=String.valueOf(n)+ ; else dayi=String.valueOf(n); n+;for(int i=星期几+dayAmount;i42;i+) dayi=;for(int i=0;i星期几;i+)dayi=*;for(int i=0;iday.length;i+) if(i%7=0) ();System.out.print( +dayi);9import java.

26、util.*; class Xiti9public static void main(String args)int year1,month1,day1,year2,month2,day2; Scanner reader=new Scanner(System.in);System.out.println(请输入第一个日期的年份月份日期,每输入一个数回车确认); year1= reader.nextInt();month1= reader.nextInt(); day1= reader.nextInt();System.out.println(请输入第二个日期的年份月份日期,每输入一个数回车确认

27、); year2= reader.nextInt();month2= reader.nextInt(); day2= reader.nextInt();Calendar calendar=Calendar.getInstance(); calendar.set(year1,month1,day1);long timeYear1=calendar.getTimeInMillis(); calendar.set(year2,month2,day2);long timeYear2=calendar.getTimeInMillis();long 相隔天数=Math.abs(timeYear1-time

28、Year2)/(1000*60*60*24); System.out.println(+year1+年+month1+月+day1+日和+year2+年+month2+月+day2+日相隔+相隔天数+天);10public class Xiti10public static void main(String args)double a=0,b=0,c=0;a=12; b=24;c=Math.max(a,b); System.out.println(c); c=Math.min(a,b); System.out.println(c); c=Math.pow(2,3); System.out.pr

29、intln(c);c=Math.abs(-0.123); System.out.println(c); c=Math.asin(0.56); System.out.println(c); c=Math.cos(3.14); System.out.println(c); c=Math.exp(1); System.out.println(c); c=Math.log(8); System.out.println(c);习 题 10 1BorderLayout 布局。2不可以。3. A,C。4import java.util.StringTokenizer; import java.awt.*;i

30、mport java.awt.event.*; import javax.swing.*; public class Xiti4public static void main(String args) ComputerFrame fr=new ComputerFrame(); fr.setTitle(计算的窗口);class ComputerFrame extends JFrame implements TextListenerTextArea text1,text2; int count=1;double sum=0,aver=0; public ComputerFrame() setLay

31、out(new FlowLayout(); text1=new TextArea(6,20); text2=new TextArea(6,20);add(text1); add(text2);text2.setEditable(false); text1.addTextListener(this); setSize(300,320); setVisible(true);addWindowListener(new WindowAdapter()public void windowClosing(WindowEvent e)System.exit(0);validate(););public vo

32、id textValueChanged(TextEvent e)String s=text1.getText(); sum=0;aver=0;StringTokenizer fenxi=new StringTokenizer(s, ,n); int n=fenxi.countTokens();count=n;double a=new doublen; for(int i=0;i0) button.setLabel(name); validate();class WindowPanel extends FrameMypanel panel1,panel2; WindowPanel() panel1=new Mypanel(); panel2=new Mypanel();panel1.setBackground(Color.red); panel2.setBackground(Color.blue); add(p

侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|