欢迎来到得力文库 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
得力文库 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    2023年Java2实用教程第5版习题解答..pdf

    • 资源ID:92545487       资源大小:1.54MB        全文页数:51页
    • 资源格式: PDF        下载积分:4.3金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要4.3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    2023年Java2实用教程第5版习题解答..pdf

    习题解答 习题 1(第 1 章)一、问答题 1 Java 语言的主要贡献者是谁?2开发 Java 应用程序需要经过哪些主要步骤?3 Java 源文件是由什么组成的?一个源文件中必须要有 public 类吗?4如果 JDK 的安装目录为 D:jdk,应当怎样设置 path 和 classpath 的值?5 Java 源文件的扩展名是什么?Java 字节码的扩展名是什么?6如果 Java 应用程序主类的名字是 Bird,编译之后,应当怎样运行该程序?7有哪两种编程风格,在格式上各有怎样的特点?1 James Gosling 2需 3 个步骤:1)用文本编辑器编写源文件。2)使用 javac 编译源文件,得到字节码文件。3)使用解释器运行程序。3 源文件由若干个类所构成。对于应用程序,必须有一个类含有 public static void main(String args)的方法,含有该方法的类称为应用程序的主类。不一定,但至多有一个 public 类。4 set classpath=D:jdkjrelibrt.jar;.;5.java 和 class 6.java Bird 7.独行风格(大括号独占行)和行尾风格(左大扩号在上一行行尾,右大括号独占行)二、选择题 1 B。2 D。1下列哪个是 JDK 提供的编译器?A)java.exe B)javac.exe C)javap.exe D)javaw.exe 2下列哪个是 Java 应用程序主类中正确的 main 方法?A)public void main(String args)B)static void main(String args)C)public static void Main(String args)D)public static void main(String args)三、阅读程序 阅读下列 Java 源文件,并回答问题。public class Person void speakHello()System.out.print(您好,很高兴认识您);System.out.println(nice to meet you);class Xiti public static void main(String args)Person zhang=new Person();zhang.speakHello();(a)上述源文件的名字是什么?(b)编译上述源文件将生成几个字节码文件?这些字节码文件的名字都是什么?(c)在命令行执行 java Person 得到怎样的错误提示?执行 java xiti 得到怎样的错误提示?执行 java Xiti.class 得到怎样的错误提示?执行 java Xiti 得到怎样的输出结果?1(a)Person.java。(b)两个字节码,分别是 Person.class 和 Xiti.class。(c)得到“NoSuchMethodError”,得到“NoClassDefFoundError:Xiti/class”,得到“您好,很高兴认识您 nice to meet you”习题 2(第 2 章)一、问答题 1 什么叫标识符?标识符的规则是什么?false 是否可以作为标识符。2 什么叫关键字?true 和 false 是否是关键字?请说出 6 个关键字。3 Java 的基本数据类型都是什么?4 float 型常量和 double 型常量在表示上有什么区别?5.怎样获取一维数组的长度,怎样获取二维数组中一维数组的个数。1用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列称为标识符。标识符由字母、下划线、美元符号和数字组成,第一个字符不能是数字。false 不是标识符。2 关键字就是 Java 语言中已经被赋予特定意义的一些单词,不可以把关键字作为名字来 用。true 和 false 不是关键字。6 个关键字:class implements interface enum extends abstract。3 boolean,char,byte,short,int,long,float,double。4 float 常量必须用 F 或 f 为后缀。double 常量用 D 或 d 为后缀,但允许省略后缀。5一维数组名.length。二维数组名.length。二、选择题 2下列哪三项是正确的 float 变量的声明?adf A.float foo=-1;B.float foo=1.0;C.float foo=42e1;D.float foo=2.02f;E.float foo=3.03d;F.float foo=0 x0123;3下列哪一项叙述是正确的?b A.char 型字符在 Unicode 表中的位置范围是 0 至 32767 B.char 型字符在 Unicode 表中的位置范围是 0 至 65535 C.char 型字符在 Unicode 表中的位置范围是 0 至 65536 D.char 型字符在 Unicode 表中的位置范围是-32768 至 32767 4以下哪两项是正确的 char 型变量的声明?be A.char ch=R;B.char ch=C.char ch=ABCD;D.char ch=ABCD;E.char ch=ucafe;F.char ch=u10100 5下列程序中哪些【代码】是错误的?2345 public class E public static void main(String args)int x=8;byte b=127;b=x;/x=12L;long y=8.0;float z=6.89;/【代码 1】【代码 2】【代码 3】【代码 4】【代码 5】6对于 int a=new int3;下列哪个叙述是错误的?b A.a.length 的值是 B.a1 的值是 1。C.a0 的值是 0。3。D.aa.length-1 的值等于 a2 的值。1 C。2 ADF。3 B。4 BE。5【代码 2】【代码 3】【代码 4】【代码 5】。6 B。三、阅读或调试程序 1属于操作题,解答略。2属于操作题,解答略。3属于操作题,解答略。4.下列程序标注的【代码 1】,【代码 2】的输出结果是什么?public class E public static void main(String args)long a=1,2,3,4;long b=100,200,300,400,500;b=a;System.out.println(数组 b 的长度:+b.length);/【代码 1】System.out.println(b0=+b0);/【代码 2】5.下列程序标注的【代码 1】,【代码 2】的输出结果是什么?public class E public static void main(String args)int a=10,20,30,40,b=1,2,4,5,6,7;b0=a;b01=b13;System.out.println(b03);/【代码 1】System.out.println(a1);/【代码 2】4【代码 5【代码 1】:4。【代码 1】:40。【代码 2】:b0=1。2】:7 四、编写程序 1 编写一个应用程序,给出汉字你、我、他在 Unicode 表中的位置。2 编写一个 Java 应用程序,输出全部的希腊字母。1.public class E public static void main(String args)System.out.println(int)你);System.out.println(int)我);System.out.println(int)他);2.public class E public static void main(String args)char cStart=,cEnd=;for(char c=cStart;c0 B m+0 C m=0 D m100&true public class E public static void main(String args)int m=10,n=0;while(【代码】n+;)3假设有 int x=1;以下哪个代码导致“可能损失精度,找到 int 需要 char”这样的编译错 误。c A short t=12+a;B char c=a+1;C char m=a+x;D byte n=a+1;1 A。2 C。3 C。三、阅读程序 1下列程序的输出结果是什么?public class E public static void main(String args)char x=你,y=e,z=吃;if(xA)y=苹;z=果;else y=酸;z=甜;System.out.println(x+,+y+,+z);2.下列程序的输出结果是什么?public class E public static void main(String args)char c=0;for(int i=1;i0)x-;System.out.print(x=+x+,y=+y);x=0,y=5 x=-1,y=4 x=-2,y=3 x=-3,y=2 x=-4,y=1 x=-5,y=0 x=-5,y=-1 1你,苹,甜 2 Jeep 好好 3 x=-5,y=-1 四、编程序题 1编写应用程序求 1!+2!+10!。2编写一个应用程序求 100 以内的全部素数。3分别用 do-while 和 for 循环计算 1+1/2!+1/3!+1/4!4一个数如果恰好等于它的因子之和,这个数就称为“完数”的前 20 项和。编写应用程序求 1000 之 内的所有完数。5编写应用程序,使用 for 循环语句计算 8+88+888 前 10 项之和。6编写应用程序,输出满足 1+2+3+n8888 的最大正整数 n。1 public class Xiti1 public 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);2 public class Xiti2 public static void main(String args)int i,j;for(j=2;j=100;j+)for(i=2;i=j/2;i+)if(j%i=0)break;if(ij/2)System.out.print(+j);3 class Xiti3 public static void main(String args)double sum=0,a=1,i=1;do sum=sum+a;i+;a=(1.0/i)*a;while(i=20);System.out.println(使用 do-while 循环计算的 sum=+sum);for(sum=0,i=1,a=1;i=20;i+)a=a*(1.0/i);sum=sum+a;System.out.println(使用 for 循环计算的 sum=+sum);4 public class Xiti4 public 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);5 public class Xiti5 public static void main(String args)int m=8,item=m,i=1;long sum=0;for(i=1,sum=0,item=m;i=10;i+)sum=sum+item;item=item*10+m;System.out.println(sum);6 public class Xiti6 public static void main(String args)int n=1;long sum=0;while(true)sum=sum+n;n+;if(sum=8888)break;System.out.println(满足条件的最大整数:+(n-1);习题 4(第 4 章)一、问答题 1面向对象语言有哪三个特性?2类名应当遵守怎样的编程风格?3变量和方法的名字应当遵守怎样的编程风格?4类体内容中声明成员变量是为了体现对象的属性还是行为?5类体内容中定义的非构造方法是为了体现对象的属性还是行为?6什么时候使用构造方法?构造方法有类型吗?7类中的实例变量在什么时候会被分配内存空间?8什么叫方法的重载?构造方法可以重载吗?9类中的实例方法可以操作类变量(static 变量)吗?类方法(static 方法)可以操作实例变量吗?可以。不可以。10类中的实例方法可以用类名直接调用吗?8 一个类中可以有多个方法具有相同的名字,但这些方法的参数必须不同,即或者是参 数的个数不同,或者是参数的类型不同。可以。9 10不可以。11简述类变量和实例变量的区别。12 this 关键字代表什么?this 可以出现在类方法中吗?1.封装、继承和多态。2当类名由几个单词复合而成时,每个单词的首字母使用大写。3 名字的首单词的首字母使用小写,如果变量的名字由多个单词组成,从第 2 个单词开 始的其它单词的首字母使用大写。4 属性 5 行为 6 用类创建对象时。没有类型 7 用类创建对象时。8 一个类中可以有多个方法具有相同的名字,但这些方法的参数必须不同,即或者是参数的个数不同,或者是参数的类型不同。可以。9 可以。不可以。10不可以。11一个类通过使用 new 运算符可以创建多个不同的对象,不同的对象的实例变量将被分 配不同的内存空间。所有对象的类变量都分配给相同的一处内存,对象共享类变量。12代表调用当前方法的对象。不可以。二、选择题 1下列哪个叙述是正确的?b A.Java 应用程序由若干个类所构成,这些类必须在一个源文件中。B.Java 应用程序由若干个类所构成,这些类可以在一个源文件中,也可以分布在若干个源文件中,其中必须有一个源文件含有主类。C.Java 源文件必须含有主类。D.Java 源文件如果含有主类,主类必须是 public 类。2下列哪个叙述是正确的?d A.成员变量的名字不可以和局部变量的相同。B.方法的参数的名字可以和方法中声明的局部变量的名字相同。C.成员变量没有默认值。D.局部变量没有默认值。3对于下列 Hello 类,哪个叙述是正确的?d A.Hello 类有 2 个构造方法。B.Hello 类的 int Hello()方法是错误的方法。C.Hello 类没有构造方法。D.Hello 无法通过编译,因为其中的 hello 方法的方法头是错误的(没有类型)。class Hello Hello(int m)int Hello()return 20;hello()4对于下列 Dog 类,哪个叙述是错误的?d A.Dog(int m)与 Dog(double m)互为重载的构造方法。B.int Dog(int m)与 void Dog(double m)互为重载的非构造方法。C.Dog 类只有两个构造方法,而且没有无参数的构造方法。D.Dog 类有 3 个构造方法。class Dog Dog(int m)Dog(double m)int Dog(int m)return 23;void Dog(double m)构造方法是一种特殊的方法,与一般的方法不同是:1.构造方法的名字必须与定义他的类名完全相同,没有 返回类型,甚至连 void 也没 有。2.构造方法的调用是在创建一个对象时使用 new 操作进行的。构造方法的作用是初始 化对象。3.不能被 static、final、synchronized、abstract 和 native 修饰。构造方法不能被 子类继承。5下列哪些类声明是错误的?cd A)class A B)public class A C)protected class A D)private class A 6下列 A 类中【代码 1】【代码 5】哪些是错误的?1 4 class Tom private int x=120;protected int y=20;int z=11;private void f()x=200;System.out.println(x);void g()x=200;System.out.println(x);public class A public static void main(String args)Tom tom=new Tom();tom.x=22;/【代码 tom.y=33;/【代码 tom.z=55;/【代码 tom.f();/【代码 tom.g();/【代码 1】2】3】4】5】7下列 E 类的类体中哪些【代码】是错误的。4 class E int x;/【代码 1】long y=x;/【代码 2】public void f(int n)int m;/【代码 3】int t=n+m;/【代码 4】1 B。2 D。3 D。4 D。5 CD。6【代码 1】【代码 4】。7【代码 4】。三、阅读程序 1说出下列 E 类中【代码 1】【代码 3】的输出结果。class Fish int weight=1;class Lake Fish fish;void setFish(Fish s)fish=s;void foodFish(int m)fish.weight=fish.weight+m;public class E public static void main(String args)Fish redFish=new Fish();System.out.println(redFish.weight);/【代码 1】Lake lake=new Lake();lake.setFish(redFish);lake.foodFish(120);System.out.println(redFish.weight);/【代码 2】System.out.println(lake.fish.weight);/【代码 3】2请说出 A 类中 System.out.println 的输出结果。class B int x=100,y=200;public void setX(int x)x=x;public void setY(int y)this.y=y;public int getXYSum()return x+y;public class A public static void main(String args)B b=new B();b.setX(-100);b.setY(-200);System.out.println(sum=+b.getXYSum();3请说出 A 类中 System.out.println 的输出结果。class B int n;static int sum=0;void setN(int n)this.n=n;int getSum()for(int i=1;i=n;i+)sum=sum+i;return sum;public class A public static void main(String args)B b1=new B(),b2=new B();b1.setN(3);b2.setN(5);int s1=b1.getSum();int s2=b2.getSum();System.out.println(s1+s2);4请说出 E 类中【代码 class A double f(int x,double y)return x+y;1】,【代码 2】的输出结果 n 的输出结果。int f(int x,int y)return x*y;public class E public static void main(String args)A a=new A();System.out.println(a.f(10,10);/System.out.println(a.f(10,10.0);/【代码 1】【代码 2】5上机实习下列程序,了解可变参数。public class E public static void main(String args)f(1,2);f(-1,-2,-3,-4);/给参数传值时,实参的个数很灵活 f(9,7,6);public static void f(int.x)/x 是可变参数的代表,代表若干个 int 型参 数 for(int i=0;ix.length;i+)/x.length System.out.println(xi);/xi 是 x 代表的参数的个数 是 x 代表的第 i 个参数(类似数组)6类的字节码进入内存时,类中的静态块会立刻被执行。实习下列程序,了解静态块。class AAA static/静态块 System.out.println(我是 AAA 中的静态块!);public class E static/静态块 System.out.println(我是最先被执行的静态块!);public static void main(String args)AAA a=new AAA();/AAA 的字节码进入内存 System.out.println(我在了解静态(static)块);1【代码 1】:1,【代码 2】:121,【代码 3】:121。2 sum=-100。3.27。4【代码 1】:100,【代码 2】:20.0。5.上机实习题目,解答略。6.上机实习题目,解答略。四、编程题 用类描述计算机中 CPU 的速度和硬盘的容量。要求 Java 应用程序有 4 个类,名字分 别是 PC,CPU 和 HardDisk 和 Test,其中 Test 是主类。PC 类与 CPU 和 HardDisk 类关联的 UML 图(图 4.33)其中,CPU 类要求 getSpeed()返回 speed 的值;要求 setSpeed(int m)方法将参数 m 的值赋值给 speed。HardDisk 类要求 getAmount()返回 amount 的值,要求 setAmount(int m)方法将参数 m 的值赋值给 amount。PC 类要求 setCUP(CPU c)将参数 c 的值赋值给 cpu,要求 setHardDisk(HardDisk h)方法将参数 h 的值赋值给 HD,要求 show()方法能显示 cpu 的速度和硬盘的容量。主类 Test 的要求 main 方法中创建一个 CPU 对象 cpu,cpu 将自己的 speed 设置为 2200,main 方法中创建一个 HardDisk 对象 disk,disk 将自己的 amount 设置为 200,main 方法中创建一个 PC 对象 pc,pc 调用 setCUP(CPU c)方法,调用时实参是 cpu,pc 调用 setHardDisk(HardDisk h)方法,调用时实参是 disk,pc 调用 show()方法。CPU PC speed:int setSpeed(int):void cpu:CPU getSpeed():int HD:HardDisk setCPU(CPU):void HardDisk setHardDisk(HardDisk):void show():void amount:int setAmount(int):void getAmount():int 图 4.33 PC 与 CPU 和 HardDisk 关联 UML 图 CPU.java public class CPU int speed;int getSpeed()return speed;public void setSpeed(int speed)this.speed=speed;HardDisk.java public class HardDisk int amount;int getAmount()return amount;public void setAmount(int amount)this.amount=amount;PC.java public class PC CPU cpu;HardDisk HD;void setCPU(CPU cpu)this.cpu=cpu;void setHardDisk(HardDisk HD)this.HD=HD;void show()System.out.println(CPU 速度:+cpu.getSpeed();System.out.println(硬盘容量:+HD.getAmount();Test.java public class Test public static void main(String args)CPU cpu=new CPU();HardDisk HD=new HardDisk();cpu.setSpeed(2200);HD.setAmount(200);PC pc=new PC();pc.setCPU(cpu);pc.setHardDisk(HD);pc.show();习题 5(第 5 章)一、问答题 1子类可以有多个父类吗?2 java.lang 包中的 Object 类是所有其他类的祖先类吗?3如果子类和父类不在同一个包中,子类是否继承父类的友好成员?4子类怎样隐藏继承的成员变量?5子类重写方法的规则是怎样的?重写方法的目的是什么?6父类的 final 方法可以被子类重写吗?7什么类中可以有 abstract 方法?8对象的上转型对象有怎样的特点?9一个类的各个子类是怎样体现多态的?10面向抽象编程的目的和核心是什么?1不可以。2是。3不继承。4声明与父类同名的成员变量。5子类重写的方法类型和父类的方法的类型一致或者是父类的方法的类型的子类型,重 写的方法的名字、参数个数、参数的类型和父类的方法完全相同。重写方法的目的是隐藏继承的方法,子类通过方法的重写可以把父类的状态和行为改变为自身的状态和行为。6不可以。7 abstract 类。8上转型对象不能操作子类新增的成员变量,不能调用子类新增的方法。上转型对象可以访问子类继承或隐藏的成员变量,可以调用子类继承的方法或子类重写的实例方法。9通过重写方法。10面向抽象编程目的是为了应对用户需求的变化,核心是让类中每种可能的变化对应地交给抽象类的一个子类类去负责,从而让该类的设计者不去关心具体实现。二、选择题 1下列哪个叙述是正确的?c E.子类继承父类的构造方法。F.abstract 类的子类必须是非 abstract 类。G.子类继承的方法只能操作子类继承和隐藏的成员变量。H.子类重写或新增的方法也能直接操作被子类隐藏的成员变量。2下列哪个叙述是正确的?d A.final 类可以有子类。B.abstract 类中只可以有 abstract 方法。C.abstract 类中可以有非 abstract 方法,但该方法不可以用 final 修饰。D.不可以同时用 final 和 abstract 修饰同一个方法。E.允许使用 static 修饰 abstract 方法。用 final 修饰的类是不允许被继承的,A 错误 abstract abstract 类中也可以有普通成员方法,B 类中的非 abstract 方法是可以用 错误 final 修饰的,而 abstract 方法是不可以被 final 修饰的,C 错误 D 同上,所以正确 不允许使用 static 修饰 abstract 方法,E 错误。3下列程序中注释的哪两个代码(A,B,C,D)是错误的(无法通过编译)?cd class Father private int money=12;float height;int seeMoney()return money;/A class Son extends Father int height;int lookMoney()int m=seeMoney();return m;/B class E public static void main(String args)Son erzi=new Son();erzi.money=300;erzi.height=1.78F;/C/D 4假设 C 是 B 的子类,B 是 A 的子类,cat 是 C 类的一个对象,bird 是 B 类的一个对象,下列哪个叙述是错误的?d E.cat instanceof B 的值是 true。F.bird instanceof A 的值是 true。G.cat instanceof A 的值是 true。H.bird instanceof C 的值是 true。5下列程序中注释的哪个代码(A,B,C,D)是错误的(无法通过编译)?b class A static int m;static void f()m=20;/A class B extends A void f()m=222;/B/C class E public static void main(String args)A.f();/D 6.下列代码中标注的(A,B,C,D)中,哪一个是错误的?b abstract class Takecare protected void speakHello()/A public abstract static void cry();/B static int f()return 0;/C abstract float g();/D 7下列程序中注释的哪个代码(A,B,C,D)是错误的(无法通过编译)?d abstract class A abstract float getFloat();/A void f()/B public class B extends A private float m=1.0f;/C private float getFloat()/D return m;8将下列哪个代码(A,B,C,D)放入程序中标注的【代码】处将导致编译错误?b A.public float getNum()return 4.0f;B.public void getNum()C.public void getNum(double d)D.public double getNum(float d)return 4.0d;class A public float getNum()return 3.0f;public class B extends A【代码】9对于下列代码,下列哪个叙述是正确的?a A.程序提示编译错误(原因是 A 类没有不带参数的构造方法)B.编译无错误,【代码】输出结果是 0。C.编译无错误,【代码】输出结果是 1。D.编译无错误,【代码】输出结果是 2。class A public int i=0;A(int m)i=1;public class B extends A B(int m)i=2;public static void main(String args)B b=new B(100);System.out.println(b.i);/【代码】1 C。2 D。3 CD。4 D。5 B。6 B。7 D。8 B。9 A。三、阅读程序 1请说出 E 类中【代码 1】,【代码 2】的输出结果。class A double f(double x,double y)return x+y;class B extends A double f(int x,int y)return x*y;public class E public static void main(String args)B b=new B();System.out.println(b.f(3,5);/【代码 1】System.out.println(b.f(3.0,5.0);/【代码 2】2说出下列 B 类中【代码 1】,【代码 2】的输出结果。class A public int getNumber(int a)return a+1;class B extends A public int getNumber(int a)return a+100;public static void main(String args)A a=new A();System.out.println(a.getNumber(10);a=new B();System.out.println(a.getNumber(10);/【代 码/【代码 1】2】3请说出 E 类中【代码 1】【代码 4】的输出结果。class A double f(double x,double y)return x+y;static int g(int n)return n*n;class B extends A double f(double x,double y)double m=super.f(x,y);return m+x*y;static int g(int n)int m=A.g(n);return m+n;public class E public static void main(String args)B b=new B();System.out.println(b.f(10.0,8.0);/【代码 1】System.out.println(b.g(3);/【代码 2】A a=new B();System.out.println(a.f(10.0,8.0);/【代码 3】System.out.println(a.g(3);/【代码 4】4请说出 E 类中【代码 1】【代码 3】的输出结果。class A int m;int getM()return m;int seeM()return m;class B extends A int m;int getM()return m+100;public class E public static void main(String args)B b=new B();b.m=20;System.out.println(b.getM();/【代码 1】A a=b;a.m=-100;System.out.println(a.getM();/上转型对象访问的是被隐藏的 m/【代码 2】上转型对象调用的一定是子类重写的 getM()方法 System.out.println(b.seeM();/【代码 3】子类继承的 seeM()方法操作的 m 是被子类隐藏的 m 1【代码 1】:15.0。【代码 2】:8.0。2【代码 1】:11。【代码 2】:11。3【代码 1】:98.0。【代码 2】:12。【代码 3】:98.0。【代码 4】:9。4【代码 1】:120。【代码 2】:120。【代码 3】:-100。四、编程题 设计一个动物声音“模拟器”,希望模拟器可以模拟许多动物的叫声。要求如下:编写抽象类 Animal Animal 抽象类有 2 个抽象方法 cry()和 getAnimaName(),即要求各种具体的动物给出自己的叫声和种类名称。编写模拟器类 Simulator 该类有一个 playSound(Animal animal)方法,该方法的参数是 Animal 类型。即参数 animal 可以调用 Animal 的子类重写的 cry()方法播放具体动物的声音、调用子类重写的 getAnimalName()方法显示动物种类的名称。编写 Animal 类的子类:Dog,Cat 类 图 5.18 是 Simulator、Animal、Dog、Cat 的 UML 图。Simulator Animal playSound(Animal):void cry()

    注意事项

    本文(2023年Java2实用教程第5版习题解答..pdf)为本站会员(C****o)主动上传,得力文库 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知得力文库 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于得利文库 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

    © 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

    黑龙江省互联网违法和不良信息举报
    举报电话:0468-3380021 邮箱:hgswwxb@163.com  

    收起
    展开