日期:2011-03-22 16:17:00 来源:本站整理
java中的protected[Java编程]
本文“java中的protected[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
protected(遭到保护的)拜候指导符要求大家提早有所熟习.首先应注意这样一个事实:为持续学习本书一向到担当那一章之前的内容,并不一定需求先理解本小节的内容.但为了保持内容的完好,这儿仍旧要对此举行扼要阐明,并供应相关的例子.
protected关键字为我们引入了一种名为“担当”的概念,它以现有的类为底子,并在此中加入新的成员,同时不会对现有的类产生影响——我们将这种现有的类称为“底子类”大概“基本类”(Base Class).亦可改变那个类现有成员的行为.关于从一个现有类的担当,我们说自己的新类“扩大”(extends)了那个现有的类.以下所示:
class Foo extends Bar {
类定义剩余的部份看起来是完好相同的.
若新建一个包,并从另一个包内的某个类里担当,则唯一可以拜候的成员就是本来那个包的public成员.当然,假如在相同的包里举行担当,那么担当得到的包可以拜候全部“友好”的成员.有些时刻,底子类的成立者喜好供应一个特别的成员,并答应拜候衍生类.这恰是protected的工作.若往回引用5.2.2小节“public:接口拜候”的那个Cookie.java文件,则下面这个类就不能拜候“友好”的成员:
关于担当,值得注意的一件风趣的事情是假使办法foo()存在于类Cookie中,那么它也会存在于从Cookie担当的全部类中.但由于foo()在外部的包里是“友好”的,所以我们不能利用它.当然,亦可将其变成public.但这样一来,由于全部人都能安闲拜候它,所以大概并非我们所但愿的局面.若象下面这样改正类Cookie://: ChocolateChip.java // Can't access friendly member // in another class import c05.dessert.*; public class ChocolateChip extends Cookie { public ChocolateChip() { System.out.println( "ChocolateChip constructor"); } public static void main(String[] args) { ChocolateChip x = new ChocolateChip(); //! x.foo(); // Can't access foo } } ///:~
那么仍旧能在包dessert里“友好”地拜候foo(),但从Cookie担当的其他东西亦可安闲地拜候它.但是,它并非大众的(public).public class Cookie { public Cookie() { System.out.println("Cookie constructor"); } protected void foo() { System.out.println("foo"); } }
以上是“java中的protected[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |
评论内容只代表网友观点,与本站立场无关!
评论摘要(共 0 条,得分 0 分,平均 0 分)
查看完整评论