1.final修辞

final修辞变量分为两种:基本类型(byte,short,int,long,float,double,char,boolean)也是值类型,则一旦初始化,值不能改变;应用类型(String,Date等),则是引用不能变。

final修辞函数,则函数不能重写。

final修辞类,则类不能被继承,但是类中的元素可以被修改。

2.public,protected,private,default之间的区别。

(1)对于public修饰符,它具有最大的访问权限,可以访问任何一个在CLASSPATH下的类、接口、异常等。它往往用于对外的情况,也就是对象或类对外的一种接口的形式。

(2)对于protected修饰符,它主要的作用就是用来保护子类的。它的含义在于子类可以用它修饰的成员,其他的不可以,它相当于传递给子类的一种继承的东西。

(3)对于default来说,有点的时候也成为friendly(友员),它是针对本包访问而设计的,任何处于本包下的类、接口、异常等,都可以相互访问,即使是父类没有用protected修饰的成员也可以。

(4)对于private来说,它的访问权限仅限于类的内部,是一种封装的体现,例如,大多数的成员变量都是修饰符为private的,它们不希望被其他任何外部的类访问。

下表为Java访问控制符的含义和使用情况

   类内部  本包  子类 外部包 
public   √  √  √  √
protected  √  √  √  ×
default   √  √  ×  ×
 private  √  ×  ×  ×

注意:Java的访问控制是停留在编译层的,也就是它不会在.class文件中留下任何的痕迹,只在编译的时候进行访问控制的检查。其实,通过反射的手段,是可以访问任何包下任何类中的成员,例如,访问类的私有成员也是可能的。

区别:

(1)public:可以被所有其他类所访问。

(2)private:只能被自己访问和修改。

(3)protected:自身,子类及同一个包中类可以访问。

(4)default(默认):同一包中的类可以访问,声明时没有加修饰符,认为是friendly。

最新文章

  1. QTimer的用法
  2. python编码最佳实践之总结
  3. OC 类别与扩展(匿名类别)
  4. SharePoint 2013 场解决方案包含第三方程序集
  5. Python自动化之配置Python模块国内镜像
  6. python最简单的http服务器
  7. B/S和C/S测试的区别
  8. Python基础:映射(字典)
  9. CentOS提示::unknown filesystem type 'ntfs'.解决
  10. 百分比布局实现响应式布局在 IE6 中填坑思路
  11. 自学Zabbix3.5.3-监控项item-key
  12. iOS-键盘监听YYKeyboardManager
  13. 设计模式之过滤器模式——Java语言描述
  14. pycharm断点应用
  15. VS2013 Ctrl+Shift+F 没反应
  16. excel加密文件破解代码
  17. 第k个素数
  18. 为什么页面设计宽度要控制在960px
  19. jvm工具及命令大全
  20. 如何取option自定义属性?

热门文章

  1. 用来在category里加属性的宏
  2. spring security采用基于简单加密 token 的方法实现的remember me功能
  3. 分享会上演示Dubbo的路由规则,结果被小坑了下
  4. HDU 1159 Common Subsequence 动态规划
  5. power shell添加vim
  6. CSS3 网格布局(grid-layout)基础知识 - 网格模板属性(grid-template)使用说明
  7. python脚本3_输入若干个整数打印出最大值
  8. 在Windows下MyEclipse运行JAVA程序连接HBASE读取数据出错
  9. 22-THREE.JS 面材质
  10. 遮罩效果 css3