实验六高级类设计.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验六高级类设计 一、实验目的 通过实验验证类的高级特性的相关语法,掌握类的静态域、静态方法,包, 掌握接口的定义和实现方法,掌握异常的使用方法。 —、实验要求 了解Java系统包的结构。 掌握创建自定义包的方法。 掌握使用系统接口的技术和创建口定义接口的方法。 理解系统界常处理的机制和创建口定义界常的方法。 三、实验设备 计算机、JCreator、JDK US实验内容 US 实验内容 I基本指导 (―)静态方法和静态变量 static声明的成员变量、方法称为静态方法和静态成员,静态方法和静态成员被视为 类的成员变量、类的成员方法,而不把它当作实例对象的成员变量和方法。换句话说,静态 变量、静态方法是类固有的,可以直接引用,其它成员变量、成员方法仅仅被声明,生成实 例对象后才存在,才可以被引用。基于这样的事实,也把静态变量、静态方法称为类变量、 方法,非静态变量称为实例变量、实例方法。 下面给出类StaticDemo和对应测试类StaticDemoTest,分别存放在文件 StaticDemo. java和SialicDemoTest.java屮,仔细阅读程序,观察程序的运行结果,理解static 方法和变量的使用方法。 类StaticDemo 〃该程序验证静态方法和静态变最的特点 //StaticDemo.java 文件 public class StaticDemo { private static int x; 〃静态变量 private int y; public static int getX()〃静态方法 return x; public static void setX(int newX) {II静态方法 x = newX; public int gX。实例方法 return y; public void setY(int newY) {//实例方法 y = newY; 阅读该程序,总结下列问题: 1)如何定义一个静态的方法和静态的常量,我们使用的关键字是什么?与实例常量和 方法的定义有何区别? 输入StaticDemo类的测试类文{-|StaticDemoTest.java,仔细阅读程序,观察运行结果, 体会静态方法和静态变量的用法和特征。 //StaticDemoTest.java public class StaticDemoTest { public static void main(String[] args) { 1/注意静态方法getX()访问的方式:类名?方法名(); System.out.println(u 静态变 m x= -^-StaticDem o .getX ()); 〃访问实例方法 // System.out.println(实例变量y=+StaticDemo.getY()); // 非法,编译时将出错 StaticDemo a= new StaticDemo(); StaticDemo b= new StaticDemo(); //再次访问静态方法,通过戒象名方滋名(); setX(l); System.out.println(a. setX( 1)后,a和b对x的取值是:”); System.out.println(静态变量 a.x=*+a.getX()); Systcm.out.println(静态变 量 b.x=”+b.getX()); sctX(3); System.out.println(nb. setX⑶后,a和b对 x的収值是:”); System.out.println(H 静态变量 a.x=+a.getX()); System.out.println(静态变量 b.x=+b.getX()); setY(2); //访问实例方法 setY(4); 〃输出对象a、b的属性:x, y的值 System.out.println(a,b 的最后的值为”); System.out.println(静态变量 a.x=+a.getX()); System.out.println(实例变量 a.y=+a.getY()); System.out.println(静态变 量b.x=”+b.getX()); Systcm.out.println(实例变 #b.y=+b.getY ()); } } 阅读并运行类StaticDemoTest,思考下列问题: 对于类StaticDemo中定义的静态方法getX();我们分别使用了类名靜态方法名Q 和对象名静态方法名O两种方式进行调用,编译该类,查看是否有错课,如果没有错课 则说明两种方式都可以调用静态方法。 在程序中我们将System.out.piintln(实例变#y=+StaticDemo.getY());进行了注释, 删去注释符号,重新编

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档