在说明这四个关键字之前,我想就class之间的关系做一个简单的定义:对于继承自己的class,base class可以认为他们都是自己的子女,而对于和自己一个目录下的classes,认为都是自己的朋友。
1、 public :对 所有用户 开放,所有用户都可直接调用
2、 private :私有。 除了class自己之外,任何人都不可直接使用 ,私有财产神圣不可侵犯嘛,即便是子女,朋友,都不可使用。
3、 protected :对于子女、朋友来说,就是public的,可自由使用,无任何限制;而对于其他的外部class,protected就变成private。( 同一个包中的类,若不在同一个包中,必须为其子孙类才可使用)
4、默认: 默认可以称为friendly,但是java语言中是没有friendly这个修饰符的 ,这样称呼应该是来源于c++。默认的访问权限是 包级访问权限 。
作用域 当前类 同一package 子孙类 其他package
public √ √ √ √
protected √ √ √ ×
friendly √ √ × ×
private √ × × ×
补充说明:
1.每个编译单元(类文件)都仅能有一个public class
2.public class的名称(包含大小写)必须和其类文件同名。
3.一个类文件(*.java)中可以不存在public class。
如果我们在某个包内撰写一个class,仅仅是为了配合同一包内的其他类工作,并且我们不想再为了撰写说明文档给客户(不一定是现实意义的客户,可能是调 用这个类的类)看而伤脑筋;或者有可能过一段时间之后会彻底改变原有的做法,并以全新的版本代替旧版本,这种情况下一般会默认。
4、 class不可以是private和protected 。
分享到:
相关推荐
对public protected private 的访问方式做了详细描述,特别是对public protected private作派生方式时,进行了深入的说明,对了解派生方式有很大作用!
文档中通过代码、图片详细的描述了C#五大修饰符的区别。我整理了挺久,希望对大家有用。
重点关注private与protected public 默认即为public,全局都可以访问,这个不解释 private C++, “private” 意为 “private to this class”, 但是Ruby中意为 “private to this instance”. 意思是:C++中,对于类...
java中public、protected、默认、private关键字
private,public,protected,还有default四种之间的区别private,public,protected,还有default四种之间的区别
细谈Delphi中的private,public,protected,这三个成员总是弄得我很头疼,经常分不开的。这里面讲的可以使我更容易理解这三个成员之间的关系
PHP中private、public、protected的区别详解.rar
用java代码来解析private、public、default、protected的权限问题
一个C++类中的变量如果如下关键字作为修饰符. 1. public: 程序的任何...下面在看下c++ public private protected关键字 1、当在类的内部使用这三个关键字,表示访问权限: public: 可以被任意访问。 protected:
这四个作用域的可见范围如下表所示。 说明:如果在修饰的元素上面没有写任何访问修饰符,则表示friendly。 作用域 当前类 同一package 子孙类 其他package public √ √ √ √ ...private √ × × ×
先看下面的例子,它将告诉我们在JS世界中也有C#里的public , private ,及static等
变量与方法的关键字public,private,protected public的权限最大,既可以让子类使用,也可以支持实例化之后的调用, protected表示的是受保护的,访问的权限是只有在子类和本类中才可以被访问到 private 表示的是私有...
超给力的讲解了Public,Private,Protected,Published的区别让大家不要清晰的应用这几个关键字
我们已经知道,在基类以private方式被继承时,其public和protected成员在子类中变为private成员。然而某些情况下,需要在子类中将一个或多个继承的成员恢复其在基类中的访问权限
一,public,private,protected的区别public:权限是最大的,可以内部调用,实例调用等。protected: 受保护类型,用于本类和继承类调用。private: 私有类型,只有在本类中使用。二,实例复制代码 代码如下:<?...
PHP中有三种访问修饰符,分别是: public(公共的、默认) protected(受保护的) private(私有的)public(公共的、默认)在PHP5中如果类没有指定成员的访问修饰符,默认就是public的访问权限。protected(受...
C++封装(class,struct,public,protected,private,friend)的博客例程。 https://blog.csdn.net/flysnow010/article/details/136907034
以上这篇浅谈php中的访问修饰符private、protected、public的作用范围就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持软件开发网。 您可能感兴趣的文章:php中访问修饰符的知识点总结PHP...
C++类访问控制public、private、protected探讨[归类].pdf