知识大全 final的注意事项
Posted 知
篇首语:不知道自己无知,乃是双倍的无知。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 final的注意事项相关的知识,希望对你有一定的参考价值。
设计一个类时 往往需要考虑是否将一个方法设为final 可能会觉得使用自己的类时执行效率非常重要 没有人想覆蓋自己的方法 这种想法在某些时候是正确的 但要慎重作出自己的假定 通常 我们很难预测一个类以后会以什么样的形式再生或重复利用 常规用途的类尤其如此 若将一个方法定义成final 就可能杜绝了在其他程序员的项目中对自己的类进行继承的途径 因为我们根本没有想到它会象那样使用 标准Java库是阐述这一观点的最好例子 其中特别常用的一个类是Vector 如果我们考虑代码的执行效率 就会发现只有不把任何方法设为final 才能使其发挥更大的作用 我们很容易就会想到自己应继承和覆蓋如此有用的一个类 但它的设计者却否定了我们的想法 但我们至少可以用两个理由来反驳他们 首先 Stack(堆栈)是从Vector继承来的 亦即Stack 是 一个Vector 这种说法是不确切的 其次 对于Vector许多重要的方法 如addElement()以及elementAt()等 它们都变成了synchronized(同步的) 正如在第 章要讲到的那样 这会造成显著的性能开销 可能会把final提供的性能改善抵销得一干二净 因此 程序员不得不猜测到底应该在哪里进行优化 在标准库里居然采用了如此笨拙的设计 真不敢想象会在程序员里引发什么样的情绪 另一个值得注意的是Hashtable(散列表) 它是另一个重要的标准类 该类没有采用任何final方法 正如我们在本书其他地方提到的那样 显然一些类的设计人员与其他设计人员有着全然不同的素质(注意比较Hashtable极短的方法名与Vecor的方法名) 对类库的用户来说 这显然是不应该如此轻易就能看出的 一个产品的设计变得不一致后 会加大用户的工作量 这也从另一个侧面强调了代码设计与检查时需要很强的责任心 cha138/Article/program/Java/JSP/201311/19167相关参考
完成器(Finalizer)、程序集名、方法信息 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!问题
通过合成方法创建新类时永远不必担心对那个类的成员对象的收尾工作每个成员都是一个独立的对象所以会得到正常的垃圾收集以及收尾处理——无论它是不是不自己某个类一个成员但在进行初始化的时候必须覆蓋衍生类中
Java语言深入final在java中的应用 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!fina
知识大全 Java中Static、this、super、final用法
Java中Static、this、super、final用法 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看
cooper面经FLPFinal 以下文字资料是由(本站网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!听说明天还有人面,所
cha138/Article/program/Java/JSP/201405/30758
Final关键字对JVM类加载器的影响 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! &
现象 在用JDBC访问某个数据库并读出一个ResultSet数据记录集时如果记录数太大则会占用客户端(运行java程序的机器)的大量内存(如果客户端是某个大企业的营业部门的代理点分机则有可能ja
在线文档阅读开发手记(一)) 从程序设计语言的理论上局部内部类(即定义在方法中的内部类)由于本身就是在方法内部(可出现在形式参数定义处或者方法体处)因而访