在刚刚学到的android开发中了解到Button的onClick是通过局部内部类的方式实现的,具体的原理我以后再去了解,只是遇到问题总是想知道为什么,不要告诉我这是规则,死记住就可以了。

问题是局部内部类定义在方法中,为什么使用方法中的变量,只能使用被final修饰的呢?

我是这样猜测的

局部内部类,不管在哪人家都是一个类呀,定义一个类,可以访问其他类的成员,嗯,这个我没意见,但是要访问人家类成员方法里的成员,这就有点过分了吧。根本不在一个作用域呀,函数里的变量生命周期多短呀,假如可以访问,那么函数里的变量都出栈了,万一指向创建的内部类对象的引用还活着呢。那多尴尬。别以为你是在那个方法里写的就可以访问了,你也是一个类呀。那为啥加上final修饰的常量就可以访问呢?final修饰的是一个常量,是一个有名字的常量,常量是不可改变的,既然是常量 写final  int x=3;   在别处写x与3是一样的。既然一样我就把3写成x吧,反正x也不会变化。对于电脑而言,记住x不如直接记成3

最新文章

  1. jsp/servlet 中sendRedirect,include,forward区别
  2. LinQ高级查询
  3. 【GOF23设计模式】组合模式
  4. Django:快速搭建简单的Blog
  5. Win7激活后添加grub引导Linux最简单方法
  6. tcp断开的4次挥手
  7. Android应用插件式开发解决方法[转]
  8. nyoj 37回文串
  9. Explain语法
  10. hdu1978--How many ways(内存搜索)
  11. LANMP系列教程之Apache编译安装CentOS7环境
  12. java 学习------helloword 程序测试
  13. 2017BUAA软工第0次作业
  14. HDU - 4725 (The Shortest Path in Nya Graph)层次网络
  15. P2700 逐个击破 最小生成树
  16. 洛谷P1605 迷宫【dfs】
  17. 九度OJ1153-括号匹配-栈的应用
  18. Python程序的打包-上传到pypi
  19. html 子元素和父元素都监听了 click 事件,点击子元素时为何先触发的是父元素的 click 事件?
  20. TinkerPop简述

热门文章

  1. Extensions in UWP Community Toolkit - ViewExtensions
  2. Java-NIO(二):缓冲区(Buffer)的数据存取
  3. POJ-3292 Semi-prime H-numbers---筛素数
  4. Java集合框架的四个接口
  5. Java进阶篇(一)——接口、继承与多态
  6. vue-cli 去掉严格模式:
  7. [SDOI2011]黑白棋
  8. ●BZOJ 4407 于神之怒加强版
  9. codeforces round #419 A. Karen and Morning
  10. 例10-9 uva1636简单概率问题