第3章_this 内部类 访问权限 包.pptVIP

  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文档。上传文档
查看更多
第3章 类与对象(封装、包、权限) 教学内容 封装 包的概念 访问权限 为什么要使用封装 下面代码有什么问题? 如何解决上面设计的缺陷? Dog d = new Dog(); d.health = 1000; 不合理的赋值 使用封装 什么是封装 面向对象三大特征之一——封装 封装的概念 封装的好处 封装:将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问 隐藏类的实现细节 只能通过规定方法访问数据 方便加入控制语句 方便修改实现 如何使用封装 封装的步骤 修改属性的可见性 创建getter/setter方法 在getter/setter方法中加入属性控制语句 设为private 用于属性的读写 对属性值的合法性进行判断 class Dog { private String name = 旺财; // 昵称 private int health = 100; // 健康值 private int love = 0; // 亲密度 private String strain = 拉布拉多犬; // 品种 public int getHealth() { return health; } public void setHealth (int health) { if (health 100 || health 0) { this.health = 40; System.out.println(健康值应该在0和100之间,默认值是40); } else this.health = health; } // 其它getter/setter方法 } this代表当前对象 1 2 2 3 - name:String - health:int - love:int - strain:String Dog + print():void + setHealth():void + getHealth():int … … 3.7 自定义包 包(package):一个包对应一个文件夹,一个包中可以放置许多类文件和子包。 方便软件的维护和资源的重用。 Java语言规定:同一个包中的文件名必须唯一,不同包中的文件名可以相同。 3.7 自定义包(续) 1.创建包 定义包语句的格式为:package 包名; 必须写在Java源程序的第一行。 如果源程序中省略了package语句,那么源文件中的类经编译后放在与源程序相同的一个无名包中。 一个包中还可以定义子包,可由标识符加“.”分割而成,如:package china.anhui.hefei; 如果在china.anhui.hefei包中存放一个名叫Student的类,则该类的全名应为:china.anhui.hefei.Student。 3.7 自定义包(续) 2. 使用包 包中存放的是编译后的字节码文件。用户可以在编程时,通过import语句导入包中的类,从而直接使用导入的类。 import语句的使用分两种情况: ① 导入某个包中的所有类,如:import mypackage.*; ② 导入某个包中的一个类,如:import mypackage.Student; 3.8访问权限 当类存放到不同的包中,对类及其成员的访问将受到其访问权限的限制 类和构造方法的访问权限只能是:public(任何类)和缺省的(本包中的类); 类中的成员的访问权限可以是上述的四种。 访问修饰符 本类 同包 子类 其他 private √ 默认(friendly) √ √ protected √ √ √ public √ √ √ √ 3.8访问权限 1. 类与构造方法的访问权限 (1)对类的访问权限的控制只有两种: public类和友好类 public类 例如: public class A { …… } 用public修饰符修饰的类称为公共类,公共类可以被任何包中的类访问。 友好类:另一种是不加任何访问权限修饰符,例如: class A { …… } 如果在另一个类中使用友好类,一定要保证它们在同一个包中。 3.8访问权限 (2)构造方法的访问权限 类中默认构造方法的访问权限和类的访问权限保持一致。 当用户自定义构造方法时,也要保证其访问权限与类相同。 因此,构造方法一般只用public和缺省两种权限修饰符。当public类的构造方法的访

文档评论(0)

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

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

1亿VIP精品文档

相关文档