包的访问控制权限.pdfVIP

  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文档。上传文档
查看更多

包的访问控制权限

private:可以定义⽅法,属性,定义的⽅法和属性不能被类的外部所看到。

default:可以本包的任意地⽅访问。

public:都可以访问,不受任何限制。

protected:保护,不同包的⾮⼦类不可以访问。

protected权限,在不同包的它的⼦类能够被访问:

packageorg.lxh.demo08.g;

publicclassHelloDemo{

protectedStringname=LXH;//只能在本包及不同包的⼦类中访问

};

在其他包的⼦类访问这个属性。

packageorg.lxh.demo08.h;

importorg.lxh.demo08.g.HelloDemo;

classSubHelloDemoextendsHelloDemo{//在其他包中的⼦类!

publicvoidprint(){

System.out.println(访问受保护属性:+super.name);

}

};

publicclassProtectedDemo01{

publicstaticvoidmain(Stringargs[]){

SubHelloDemosub=newSubHelloDemo();

sub.print();

}

};

运⾏结果:

访问受保护属性:LXH

如果现在没有使⽤⼦类,⽽是直接在不同类中访问,则会出现⽆法访问的错误。

packageorg.lxh.demo08.h;

importorg.lxh.demo08.g.HelloDemo;

publicclassProtectedDemo02{

publicstaticvoidmain(Stringargs[]){

HelloDemosub=newHelloDemo();

System.out.println(sub.name);//错误的,不同包的类⽆法访问

}

};

回顾

当产⽣⼀个类之后,为了保证类中的内容不被外部直接看到,则使⽤private关键字。但是,如果两个有关系的类要进⾏属性相互访问的

话就⽐较⿇烦。

之前只能使⽤getter(),和setter()⽅法取得和设置,所以为了减少私有属性的的访问的⿇烦,使⽤了内部类,但是内部类会破坏程序的结构。

为了让⼀个类的内容可以⽅便的使⽤,使⽤了继承的概念,但是在继承中,private属性也是⽆法被⼦类看到,所以此时,为了⽅便⼦类

的操作,

可以将属性使⽤protected进⾏封装,这样⼀来,外部也⽆法看到(不同包)。

之后有了继承之后,既然有了⽗⼦的关系,所以可以使⽤向上或者向下的转型,以完成多态性,但是,在开发中,类与类直接直接继承

并不多见,⽽往往

继承抽象类,或实现接⼝,当若⼲个操作间需要解耦合的时候,就可以使⽤接⼝完成。

既然有内部类了,则如果⼀个接⼝或者抽象类的⼦类只使⽤⼀次,则可以将其定义为匿名内部类。

开发中没有包的类是绝对不存在的。

封装-》继承-》多态。

JAVA命名规范

类:所有单词⾸字母⼤写。

⽅法:第⼀个⾸字母⼩写,之后每个单词⾸字母⼤写:如:getInfo();

属性:第⼀个⾸字母⼩写,之后每个单词⾸字母⼤写:如:studentName;

包:所有单词的字母⼩写,如:org.lxh.demo08.h

常量:所有字母⼤写,如:FLAG.

总结:

protected访问权限;

命名规范。

文档评论(0)

152****7015 + 关注
实名认证
文档贡献者

大学教授

1亿VIP精品文档

相关文档