java面向对象程序设计课后习题答案耿祥义张跃平主编清华大学出版社.docx
- 文档编号:12374180
- 上传时间:2023-06-05
- 格式:DOCX
- 页数:74
- 大小:83.46KB
java面向对象程序设计课后习题答案耿祥义张跃平主编清华大学出版社.docx
《java面向对象程序设计课后习题答案耿祥义张跃平主编清华大学出版社.docx》由会员分享,可在线阅读,更多相关《java面向对象程序设计课后习题答案耿祥义张跃平主编清华大学出版社.docx(74页珍藏版)》请在冰点文库上搜索。
java面向对象程序设计课后习题答案耿祥义张跃平主编清华大学出版社
习题解答
习题1
1.James Gosling
2.需3个步骤:
1)用文本编辑器编写源文件.
2)使用javac编译源文件,得到字节码文件.
3)使用解释器运行程序。
3.由类构成。
不就是必须得。
4.path=D:
\jdk\bin;
setclasspath=D:
\jdk\jre\lib\rt、jar;、;
5、B
6、Java源文件得扩展名就是、java,Java字节码得扩展名就是、class.
7。
D。
8.A:
Speak、java.
B:
两个字节码文件,Speak、class与Xiti8、class。
C:
java Xiti8。
D:
执行java Speak得错误提示
Exceptioninthread "main"java、lang、NoSuchMethodError:
main
执行java xiti8得到得错误提示
Exception in thread"main"java、lang、NoClassDefFoundError:
xiti8 (wrongname:
Xiti8)
执行javaXiti8、class得到得错误提示
Exceptionin thread"main"java、lang、NoClassDefFoundError:
Xiti8/class
执行javaXiti8得到得输出结果
I’m gladto meetyou
(4)
9。
属于操作题,解答略。
习题2
1. D
2.【代码1】 【代码2】错误 //【代码3】更正为 float z=6.89F;
3。
float型常量后面必须要有后缀“f”或“F”。
对于double常量,后面可以有后缀“d”或“D”,但允许省略该后缀。
4.public classXiti4{
publicstaticvoidmain(Stringargs[]){
charch1='您’,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、78312
8。
【代码1】false
【代码2】true
【代码3】false
【代码4】3
【代码5】4、4
【代码6】8、8
习题3
1.输出110
if—else语句书写得不够规范,复合语句缺少大括号“{}”,代码不够清晰.
2。
您好好酷!
!
3.
publicclassXiti3_3
{
public staticvoid main(Stringargs[]){
intstartPosition=0,endPosition=0;
charcStart='а',cEnd='я';
startPosition=(int)cStart; //cStart做int型转换据运算,并将结果赋值给startPosition
endPosition=(int)cEnd; //cEnd做int型转换运算,并将结果赋值给endPosition
System、out、println(”俄文字母表:
");
for(inti=startPosition;i<=endPosition;i++){
charc=’\0';
c=(char)i; //i做char型转换运算,并将结果赋值给c
System、out、print(”"+c);
if((i-startPosition+1)%10==0)
System、out、println(””);
}
}
}
4。
publicclassXiti4
{ publicstaticvoid main(String args[])
{double sum=0,a=1;
inti=1;
while(i〈=20)
{ sum=sum+a;
i++;
a=a*i;
}
System、out、println(”sum="+sum);
}
}
5。
classXiti5
{public staticvoidmain(String args[])
{int i,j;
for(j=2;j〈=100;j++)
{for(i=2;i〈=j/2;i++)
{ if(j%i==0)
break;
}
if(i>j/2)
{System、out、print(”"+j);
}
}
}
}
6.
classXiti6
{public staticvoidmain(Stringargs[])
{ doublesum=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;
}
System、out、println(”使用for循环计算得sum="+sum);
}
}
7.
public classXiti7
{ publicstaticvoidmain(String args[])
{intsum=0,i,j;
for(i=1;i〈=1000;i++)
{for(j=1,sum=0;j〈i;j++)
{if(i%j==0)
sum=sum+j;
}
if(sum==i)
System、out、println("完数:
"+i);
}
}
}
8。
方法之一
import java、util、Scanner;
public classXiti8
{ publicstaticvoidmain(Stringargs[]){
System、out、println("请输入两个非零正整数,每输入一个数回车确认");
Scannerreader=newScanner(System、in);
intm=0,n=0,temp=0,gy=0,gb=0,a,b;
a=m=reader、nextInt();
b=n= reader、nextInt();
if(m<n)
{ temp=m;
m=n;
n=temp;
}
int r=m%n;
while(r!
=0)
{n=m;
m=r;
r=m%n;
}
gy=n;
gb=a*b/gy;
System、out、println("最大公约数:
"+gy);
System、out、println(”最小公倍数 :
"+gb);
}
}
8.方法之二
importjava、util、Scanner;
public class Xiti8{
publicstaticvoidmain(Stringargs[]){
System、out、println(”请输入两个非零正整数,每输入一个数回车确认");
Scannerreader=newScanner(System、in);
intm=0,n=0,t=0,gy=0,gb=0;
m =reader、nextInt();
n= reader、nextInt();
if(m>n){
t=m;
m=n;
n=t;
}
for(int i=1;i〈=m;i++){
if(m%i==0 &&n%i==0){
gy=i;
}
}
gb=m*n/gy;
System、out、println(m+","+n+"得最大公约数为”+gy);
System、out、println(m+","+n+"得最小公倍数为 "+gb);
}
}
9.
publicclassXiti9
{publicstatic voidmain(Stringargs[])
{int n=1;
longsum=0,t=1;
t=n*t;
while(true)
{ sum=sum+t;
if(sum〉9999)
break;
n++;
t=n*t;
}
System、out、println("满足条件得最大整数:
”+(n—1));
}
}// 1至7得阶乘与就是sum=5913、0 // 1至8得阶乘与就是sum=46233、0
习题4
1。
用该类创建对象时。
2。
所谓方法重载就是在一个类中可以有多个方法具有相同得名字,但这些方法得参数必须不同,即或者就是参数得个数不同,或者就是参数得类型不同。
构造方法可以重载。
3。
可以。
不可以。
4。
不可以。
5.成员变量又分为实例变量与类变量,用static修饰得变量就是类变量。
那么类变量与实例变量有什么区别呢?
一个类通过使用new运算符可以创建多个不同得对象,不同得对象得实例变量将被分配不同得内存空间;如果类中得成员变量有类变量,那么所有对象得这个类变量都分配给相同得一处内存,改变其中一个对象得这个类变量会影响其它对象得这个类变量。
也就就是说对象共享类变量。
6.C,D
7.【代码1】,【代码4】
8。
sum=—100
9。
27
10、**20
##100
习题5
1。
如果子类与父类在同一个包中,那么子类自然地继承了其父类中不就是private得成员变量作为自己得成员变量,并且也自然地继承了父类中不就是private得方法作为自己得方法。
继承得成员或方法得访问权限保持不变。
如果子类与父类不在同一个包中,那么子类继承了父类得protected、public成员变量做为子类得成员变量,并且继承了父类得protected、public方法为子类得方法,继承得成员或方法得访问权限保持不变。
如果子类与父类不在同一个包里,子类不能继承父类得友好变量与友好方法.
只要子类中声明得成员变量与父类中得成员变量同名时,子类就隐藏了继承得成员变量。
子类中定义一个方法,这个方法得类型与父类得方法得类型一致或者就是父类得方法得类型得子类型,并且这个方法得名字、参数个数、参数得类型与父类得方法完全相同,子类如此定义得方法称作子类重写得方法。
子类通过方法得重写可以隐藏继承得方法。
2。
不可以。
3.abstract类。
4.假设B类就是A类子类或间接子类,当我们用子类B创建一个对象,并把这个对象得引用放到A类得对象中时,称这个A类对象就是子类对象得上转型对象.
5.可以把实现某一接口得类创建得对象得引用赋给该接口声明得接口变量中。
那么该接口变量就可以调用被类实现得接口中得方法.
6.A,C,D
7。
15、0
8、0
8.98、0
12
9。
classA
{ publicfinal voidf()
{charcStart='a',cEnd='z';
for(charc=cStart;c<=cEnd;c++)
{ System、out、print(""+c);
}
}
}
class BextendsA
{ publicvoidg()
{char cStart=’α',cEnd='ω’;
for(charc=cStart;c〈=cEnd;c++)
{ System、out、print(""+c);
}
}
}
public classXiti9
{ public static void main (Stringargs[])
{Bb=newB();
b、f();
b、g();
}
}
10.
classA
{ publicintf(inta,int b){
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 面向 对象 程序设计 课后 习题 答案 耿祥义张跃平 主编 清华大学出版社