`
fcmfcm01
  • 浏览: 65731 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

java 作用域 public private default protected 的差别

阅读更多

在Java中有四种不同的作用域,分别是 public protected default 和private,这四种不同的作用域的限制由前到后逐渐的增加。

现在来看看public的作用域,在所有的作用域中,public可谓是最宽松的,在编写类文件的时候,只要该类以public关键字修饰,那么这个类的类文件就必须以该类的简单类名来命名。在类的内部,被它修饰的无论是参数还是方法,都可以在任何地方访问的到(当然前提是这个类是公开的,就是上文说到的是以public关键字修饰的类)。

而对于protected作用域来说,它的限制就严格了一点,它只允许本类、同一个包内的其他类(这个类不是它的子类)或者它的子类使用被它修饰的方法或者参数(以protected修饰的类貌似还没遇到过,O(∩_∩)O~,有用过的给个提醒),子类使用父类中的protected方法或者参数时不受包位置的影响,这就意味着,即使位于不同包的类想要调用它父类的protected方法或者参数也是被允许的。

对于default作用域(即不加任何的关键字修饰的方法或者参数),它的限制就严格的多了,除了本类和本包中的类能访问以外,就是不在同一个包内的它自己的子类也不能访问(有点像老子跟儿子分家了,老子的东西就不能给儿子用了一样O(∩_∩)O~)。

private作用域在这四种之内是最为严格的,除了它自己,哪怕是同包内的其他类都不允许使用。通常我们使用这个关键字来实现对类的方法的隔离,它意味着,除了本类的方法能够调用这个私有化成员以外,其他的包括同包中的类和子类都不能访问这些个私有的成员。(肥水不流外人田嘛,能被private修饰的东东怎么说也是相当有价值的了)。

具体的信息看下图:

作用域 当前类 同一包内 子孙类 其他包
public
protected ×
default × ×
private × × ×

7
1
分享到:
评论
3 楼 hety163 2014-10-14  
2 楼 yaoneng 2012-05-22  
哈哈。。楼上的经典~~
1 楼 lf84730258 2010-05-06  
public  是众生平等
protect 是 肥水不流外人田
default 是 大人可以小孩不行
private 是 生是我家人,死我家鬼.

相关推荐

    说出作用域public, private, protected,以及不写得区别

    这四个作用域的可见范围如下表所示。 说明:如果在修饰的元素上面没有写任何访问修饰符,则表示friendly。 作用域 当前类 同一package 子孙类 其他package public √ √ √ √ protected √ √ √ × friendly ...

    delphi的Public,Private,Protected,Published作用域

    超给力的讲解了Public,Private,Protected,Published的区别让大家不要清晰的应用这几个关键字

    java内置对象作用域

    java内置对象作用域java内置对象作用域java内置对象作用域java内置对象作用域

    java变量的生命周期与作用域

    java变量的生命周期与作用域ppt 很详细的资源

    Java四种变量特性

    Java四种不同的变量作用域使用说明,包括public,private,protected,default,指出它们之间细微的区别

    java面试宝典.docx

    1.作用域public,private,protected,以及不写时的区别。 (1)、public:public表明该数据成员、成员函数是对所有用户开放的,所有用户都可以直接进行调用 (2)、private:private表示私有,私有的意思就是除了class自己...

    Java程序设计基础:变量的作用域.pptx

    理解局部变量与全局变量的区别及作用域 能区分局部变量与全局变量,并读懂程序 变量的作用域(scope of a variable) 就指变量在程序中可以被引用的范围。 变量的作用域 public static void method1(){ . . for ( int...

    JAVA面试题149例

    1、作用域public,private,protected,以及不写时的区别 答:区别如下: 作用域 当前类 同一package 子孙类 其他package public √ √ √ √ protected √ √ √ × friendly √ √ × × private √ × × × 不写时...

    函数的全局和局部作用域和变量-作用域.html

    // 全局作用域:在script之间或者一个独立的js文件 script之间或者一个独立的js文件里的内容区域,在全局作用域中定义的作用域 全局作用域。 在任何位置都可以访问 // 局部变量:在函数作用域之间里的一个或者...

    java笔试题,java程序员常见的笔试

    1、作用域public,private,protected,以及不写时的区别 答:区别如下: 作用域 当前类 同一package 子孙类 其他package public √ √ √ √ protected √ √ √ × friendly √ √ × × private √ × × × 不写时...

    JAVA 笔试 总结

    给面试的你们,Java 笔试作用域public,private,protected,以及不写时的区别

    最新最全Java面试题汇总

    1、作用域public,private,protected,以及不写时的区别 答:区别如下: 作用域 当前类 同一package 子孙类 其他package public √ √ √ √ protected √ √ √ × friendly √ √ × × private √ × × × 不写时...

    一些JAVA的基础面试题

    java经典面试题 Java基础方面:作用域public,private,protected,以及不写时的区别 答:区别如下: 作用域 当前类 同一package 子孙类 其他package

    java笔试题目Java基础方面

    0、作用域public,private,protected,以及不写时的区别 答:区别如下: 作用域 当前类 同一package 子孙类 其他package public √ √ √ √ protected √ √ √ × friendly √ √ × × private √ × × × 不写时...

    java程序员面试宝典 含答案

    b:作用域public,private,protected,以及不写时的区别;c:重写和重载的区别; d:一些集合类的区别,工作原理,如list,map等; e:arraylist, vector, hashmap ,hashtable,linklist等的区别; f:String类的相关方法的...

    java面试题(基础部分).pdf

    java面试题(基础部分).pdf 1、作用域public,private,protected,以及不写时的区别

    Java预备面试题

    Java预备面试题•• 作用域public,private,protected,以及不写时的区别 面向对象的特征有哪些方面

    在块级作用域内声明函数

    关于ES6中let 和 const 命令的用法以及注意事项:中的报错的样式ES6 引入了块级作用域,明确允许在块级作用域之中声明函数。ES6 规定,块级作用域之中,函数声明语句的行为类似于let,在块级作用域之外不可引用。

    作用域的定义及应用

    本文章是关于作用域的定义及应用。

    java基础知识

    1、作用域public,private,protected,以及不写时的区别 答:区别如下: 作用域 当前类 同一package 子孙类 其他package public √ √ √ √ protected √ √ √ × friendly √ √ × × private √ × × × 不写时...

Global site tag (gtag.js) - Google Analytics