昨天有一个比较爱思考的同事和我提起一个问题:为什么匿名内部类使用的局部变量和参数需要final修饰,而外部类的成员变量则不用?对这个问题我一直作为默认的语法了,木有仔细想过为什么(在分析完后有点印象在哪本书上看到过,但是就是没有找到,难道是我的幻觉?呵呵)。虽然没有想过,但是还是借着之前研究过字节码...
分类:
其他好文 时间:
2014-05-26 22:04:34
阅读次数:
384
首先查看下面一段代码,我指出了问题代码的所在,读者先自己思考一下这段代码会有什么问题。
这是用clone方法完整拷贝一个二项堆(BinomialHeap)结构的代码。二项堆中包含一个内部类BinomialHeapEntry,这个内部类的对象即二项堆中的每一个结点,除了包含结点对应的关键...
分类:
编程语言 时间:
2014-05-26 16:18:40
阅读次数:
412
一、封装二、继承三、多态修改符: a.public 表示全局的。类内部、类外部、子类都可以使用
b.protected 表示受保护的,只有本类和子类可以使用c.private 表示私有的,只能在本类中使用
小结:私有的和受保护的想要在外部使用可以像在java中定义get/set方法,在g...
分类:
Web程序 时间:
2014-05-26 16:16:17
阅读次数:
334
提起Java内部类(Inner
Class)可能很多人不太熟悉,实际上类似的概念在C++里也有,那就是嵌套类(Nested
Class),关于这两者的区别与联系,在下文中会有对比。内部类从表面上看,就是在类中又定义了一个类(下文会看到,内部类可以在很多地方定义),而实际上并没有那么简单,乍看上去内部...
分类:
编程语言 时间:
2014-05-26 14:26:42
阅读次数:
303
上一篇博文里总结了面向对象三大特性在Java中的体现,现在谈一谈Java中的抽象类,接口,内部类等特性。...
分类:
编程语言 时间:
2014-05-20 16:41:54
阅读次数:
252
js的内部类javascript
中本身提供一些,可以直接使用的类,这种类就是内部类,主要有:ObjectArrayMathBooleanStringRegExpDateNumber1、内部类分类从使用的方式看:分为动态类和静态类(1)
动态类 使用 var对象 = new 动态类() 对象属性|方...
分类:
编程语言 时间:
2014-05-19 22:12:33
阅读次数:
468
developer.android.com 文档中有一篇关于性能的文章,里面提到了内部类的使用。文章建议“对于私有内部类 使用 包访问权限代替私有权限访问”,
这里说的是在内部类访问外部类的成员或方法时如果 内部类是私有的并且外部类的成员也是私有的,那么编译器就会为内部类在外部类中增加一个静态方法。
真的是这样的吗?只有试一试才知道。
我们使用一个简单的例子来测试下:
public c...
分类:
移动开发 时间:
2014-05-18 07:23:58
阅读次数:
387
一个.java源文件中可以有多个类吗?(内部类除外)有什么条件?带着这个疑惑,动手建几个测试类,揭开心中的疑惑。以下是解开疑惑过程:package
test;/*** 一个.java源文件中可以有多个类吗?(内部类除外)有什么条件?* 可以的*但是只能有一个public类, 而且如果有public类...
分类:
编程语言 时间:
2014-05-17 15:19:06
阅读次数:
261
自己的笔记:
内部的访问规则:
内部类可以直接访问外部类的成员,包括私有。
外部类要想访问内部类,必须建立对象。
之所以可以直接访问外部类的成员,因为内部类持有外部类的引用,格式:Outer.this.x
访问格式:
在内部类定义在外部类中的成员位置上,而且是非...
分类:
其他好文 时间:
2014-05-15 23:22:37
阅读次数:
343
内部类不是很好理解,但说白了其实也就是一个类中还包含着另外一个类如同一个人是由大脑、肢体、器官等身体结果组成,而内部类相当于其中的某个器官之一,例如心脏:它也有自己的属性和行为(血液、跳动)显然,此处不能单方面用属性或者方法表示一个心脏,而需要一个类而心脏又在人体当中,正如同是内部类在外部内当中实例...
分类:
编程语言 时间:
2014-05-15 21:37:36
阅读次数:
273