1、public:public表明该数据成员、成员函数是对所有用户开放的,所有用户都可以直接进行调用 

2、private:private表示私有,私有的意思就是除了class自己之外,任何人都不可以直接使用,私有财产神圣不可侵犯嘛,即便是子女,朋友,都不可以使用。 

3、protected:protected对于子女、朋友来说,就是public的,可以自由使用,没有任何限制,而对于其他的外部class,protected就变成private。 

         作用域       当前类    同一package   子孙类     其他package 

           public        √         √             √           √ 

          protected     √          √             √           × 

          friendly      √          √             ×           × 

          private       √          ×             ×           ×

  

 
 
根据程序上下文环境,Java关键字final有“这是无法改变的”或者“终态的”含义,它可以修饰非抽象类、非抽象类成员方法和变量。你可能出于两种理解而需要阻止改变:设计或效率。
        final类不能被继承,没有子类,final类中的方法默认是final的。
        final方法不能被子类的方法覆盖,但可以被继承。
        final成员变量表示常量,只能被赋值一次,赋值后值不再改变。
        final不能用于修饰构造方法。
        注意:父类的private成员方法是不能被子类方法覆盖的,因此private类型的方法默认是final类型的。
 
1、final类
        final类不能被继承,因此final类的成员方法没有机会被覆盖,默认都是final的。在设计类时候,如果这个类不需要有子类,类的实现细节不允许改变,并且确信这个类不会载被扩展,那么就设计为final类。
2、final方法
        如果一个类不允许其子类覆盖某个方法,则可以把这个方法声明为final方法。
        使用final方法的原因有二:
        第一、把方法锁定,防止任何继承类修改它的意义和实现。
        第二、高效。编译器在遇到调用final方法时候会转入内嵌机制,大大提高执行效率。
3、final变量(常量)
        用final修饰的成员变量表示常量,值一旦给定就无法改变!
        final修饰的变量有三种:静态变量、实例变量和局部变量,分别表示三种类型的常量。
        从下面的例子中可以看出,一旦给final变量初值后,值就不能再改变了。
        另外,final变量定义的时候,可以先声明,而不给初值,这中变量也称为final空白,无论什么情况,编译器都确保空白final在使用之前必须被初始化。但是,final空白在final关键字final的使用上提供了更大的灵活性,为此,一个类中的final数据成员就可以实现依对象而有所不同,却有保持其恒定不变的特征。

最新文章

  1. cursor
  2. vbs test
  3. 2014---多校训练一(A Couple doubi)
  4. 调用未绑定的父类方法和使用supper 函数 之间的选择.
  5. PHP中使用CURL实现get和post请求(总结)
  6. Oracle 查看表空间剩余与创建空间语法
  7. POJ 1995
  8. 有n个整数,使其前面各数顺序向后移m个位置,最后m个数变成最前面m个数。
  9. hdu 4542 小明系列故事——未知剩余系
  10. js 得到当前季度
  11. Computer Graphics Thinking–texture tiling
  12. JSON 小记
  13. wind7系统修改host
  14. 管理维护Replica Sets
  15. Amazon email system中使用的字体
  16. NancyFX 第十一章 Bootstrapping
  17. jdk源码阅读笔记-LinkedList
  18. 老男孩Python九期全栈学习笔记3
  19. C++类的组合例子
  20. MySQL:进阶之视图函数

热门文章

  1. Go语言项目的错误和异常管理 via 达达
  2. Live555研究之二Sleep实现
  3. dephi WaitForMultipleObjects 用法
  4. shell获取db信息及上传下载操作
  5. 【手机走 ipv6】
  6. I2c串行总线组成及其工作原理
  7. JS 框架之我感
  8. 如何制作网页小动画?——gif or png
  9. STL --最常见的容器使用要点
  10. Android ADB使用