Java程序设计实验指导书(7)

2020-04-14 01:27

对象,分别打印c1同c2的信息;

b) 使c2的半径等于c1的半径,使c1的半径等于原c2的半径,分别打印c1同c2的信息;

(4)定义一个日期类MyDate,至少具有私有成员变量:year、month、day,以及成员方法setYear、getYear等(具体隐藏实现方法,用于设置、获取成员变量)、isRunyear(boolean型,判断当前对象保存的年是否为闰年)、print(打印日期对象的年\\月\\日信息)。

a) 在main方法,要求方法中通过“MyDate d1=new MyDate(); MyDate d2=new MyDate(2009,4,1);”分别新建年月日为1999年1月1日的日期对象和年月日为2009年4月1日的日期对象,分别打印d1同d2的信息;

(5)使d2的年等于d1的年,使d1的月等于原d2的月,分别打印d1同d2的信息;

3.预习和复习内容 教材第4章。

23

附录1 ClassLoadTest.java

package ch3;

public class ClassLoadTest{ static{ System.out.println(\ }

public static void main(String [] args) {

} }

附录2 PassValueTest.java

package ch3;

public class PassValueTest { private int i = -100; public void test1(int b) { b = 100; } public void test2(PassValueTest b) { b.i = 100; } public void test3(PassValueTest b) { b = this; } public static void main(String[] args) { PassValueTest obj = new PassValueTest(); int temp = 100; obj.test1(temp); System.out.println(temp); obj.test2(obj); System.out.println(obj.i); obj.i=100; PassValueTest newobj = new PassValueTest(); obj.test3(newobj); System.out.println(newobj.i); } }

附录3 StaticTest.java

package ch3;

public class StaticTest { public static void call1(){

24

/* */ }

}

staticmethod();

nonstaticmethod(); //注释这行

public static void call2(StaticTest o1){ o1.nonstaticmethod(); StaticTest o2=new StaticTest (); o2.nonstaticmethod(); }

public void nonstaticmethod(){ System.out.println(\非静态方法被调用\}

public static void staticmethod(){ System.out.println(\静态方法被调用\}

public static void main(String[] arg){ StaticTest obj=new Test2(); StaticTest.call1(); StaticTest.call2(obj); }

25

实验三、对象和类(包)

1.实验目的

(1)理解包的意义,学会定义、编译和运行一个包内的类,熟练掌握外部包中具体类和全部类的导入方式,理解包带来的一种新的java访问控制机制。

2.实验内容和步骤

(1)在Jbuilder或Eclipse等其他集成开发环境中分别新建名为com.yourname.ch3和com.yourname.other的两个包。

(2)将附件1、附件2、附件3添加到工程中,注意附件1和附件2应该放在名为“com.yourname.ch3”的包中,附件3应放在名为“com.yourname.other”的包中。分别调试3个源文件,保证都能编译成功。

① 在附件2、附件3的main方法中添加语句“Pclass pc=new Pclass();”,分别编译它们会出现什么结果,说明什么?

② 将附件3中的“Pclass pc=new Pclass();”改为“com.yourname.ch3.Pclass pc=new com.yourname.ch3.Pclass();”再编译会出现什么结果,为什么?用import导入包com.yourname.ch3后,再改为“Pclass pc=new Pclass();”可否通过编译?

③ 在附件2、附件3的main方法中继续添加语句“Dclass dc=new Dclass();”,分别编译它们会出现什么结果,说明什么?从附件3删除“Dclass dc=new Dclass();”,保证附件3能编译通过。

④ 在附件2、附件3的main方法中继续添加语句

26

“pc.method1();”,分别编译它们会出现什么结果,说明什么?

⑤ 在附件2、附件3的main方法中继续添加语句:“

pc.method1();

pc.method2(); pc.method3(); pc.method4();

”分别编译它们会出现什么结果说明什么(仔细分析两个编译结果的不同之处)?删除不可执行的语句确保保证附件2、3都能编译通过。

⑥ 在附件2的main方法中继续添加语句:“

dc.method1(); dc.method2(); dc.method3(); dc.method4();

”编译附件2会出现什么结果说明什么? 3.预习和复习内容 教材第4章

27


Java程序设计实验指导书(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:影视鉴赏习题及答案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: