java final 关键字醍醐灌顶
醍醐灌顶:
final 关键字,它可以修饰数据 、方法、类。
可能有些同学傻傻分不清出,这里可以快速弄懂final;
final 实例域:
可以将实例域定义为final,构建对象时必须初始化这样的域,也就是说,必须确保在每一个构造器执行之后,这个域的值被设置,并且在后面的操作中,不能够在对它进行修改,例如,可以将Employee类中的name域声明为final,因为对象构建之后,这个值不会在被修改。即没有setName方法。
class Employee
{
private final String name;
}
final 修饰符大都应用基本的类型域,或者不可变的类,String 修饰。
用final 修饰可变类,会造成混淆.
private final Date hiredate; //这仅仅意味着对象引用在对象构造函数之后不能改变,而并不意味着 hiredate 对象是一个常量,任何方法都可以对hiredate 引用的对象进行调用。
你是否理解啦其中的奥秘啦吗?
不理解推荐一个对final 介绍比较详细的:http://www.cnblogs.com/dolphin0520/p/3736238.html
java final 关键字醍醐灌顶的更多相关文章
- 深入java final关键字
Java final关键字详解:https://blog.csdn.net/kuangay/article/details/81509164 深入java final关键字 用法注意点和JVM对其进行 ...
- 【转载】java final 关键字的几种用法
原文链接点这里,感谢博主分享 在java的关键字中,static和final是两个我们必须掌握的关键字.不同于其他关键字,他们都有多种用法,而且在一定环境下使用,可以提高程序的运行性能,优化程序的结构 ...
- Java——final关键字
前言 Java中的关键字final的含义通常为"这是无法改变的".下面将介绍final用于修饰数据.方法和类的这三种情况. final数据 许多编程语言都有某种方法,来向告诉编译器 ...
- [java]final关键字的几种用法
在java的关键字中,static和final是两个我们必须掌握的关键字.不同于其他关键字,他们都有多种用法,而且在一定环境下使用,可以提高程序的运行性能,优化程序的结构.下面我们来了解一下final ...
- [java]final关键字、finally关键字与finalize()方法
final关键字: final关键字通常指的是“无法改变的”,使用“无法改变”这样修饰可能出于两个原因:设计或者效率. final可以修饰变量.方法和类. 一.final变量 一个既是static又是 ...
- java final关键字详解
final是java中保留关键字,可以声明成员变量.类.方法与本地变量,一旦引用final关键字,将不能再改变这个引用,编译器会检查代码,要是想改变该引用,会报错. final变量? 凡是对成员变量或 ...
- 我去,你竟然还不会用 Java final 关键字
写一篇文章容易吗?太不容易了,首先,需要一个安静的环境,这一点就非常不容易.很多小伙伴的办公室都是开放式的,非常吵,况且上班时间写的话,领导就不高兴了:只能抽时间写.其次,环境有了,还要有一颗安静的心 ...
- Java final关键字特点
一.特点 1.由于继承,方法可以重写,所以父类的功能就会被子类覆盖2.有时候我们不想子类覆盖父类的功能,这时候我们可以使用final关键字3.final可以修饰:类.变量,方法.4.final修饰类, ...
- java final关键字与static关键字
一 final关键字 1.final修饰类不可以被继承,但是可以继承其他类. 例如: class Yy {} final class Fu extends Yy{} //可以继承Yy类 class ...
随机推荐
- 得到IP包的数据意义(简单实现例子)
#include <stdio.h> #include <unistd.h> #include <linux/if_ether.h> #include <li ...
- Glib程序使用Valgrind查找内存泄露
G_DEBUG=gc-friendly G_SLICE=always-malloc //glib有缓存 故需使用 上述两条设置环境变量 G_SLICE和G_DEBUG排除由内存分配机制带来的 ...
- 【Linux指令】使用中学习(一)
sed指令: 应用:对于大文件,比如10G的大文件,我遇到的是导出的数据库.sql文件,想要使用vim修改几乎是不可能的,用sed指令可以在不打开文件的情况下修改文件,下面是一些具体用法 删除文件特定 ...
- WEB Application Development Integrator : 应用设置
1.1. 系统安装 应用 Oracle EBS WEB Application Development Integrator WEB ADI在Oracle EBS 11.5.10.* 版本 ...
- 自定义UITextField(UITextField重写)
// CustomField.h #import <UIKit/UIKit.h> @interface CustomField : UITextField @end // CustomFi ...
- poj2608---几个字母映射到同一个数字
#include <stdio.h> #include <stdlib.h> #include<string.h> ]={,,,,,,,,,,,,,,,,,,,,, ...
- poj2070简单题
#include <stdio.h> #include <stdlib.h> int main() { float sped; int wei,sth; while(scanf ...
- brief InformationTechnology theory of evolution
信息技术进化论简述 无文化流氓帮帮主Ruiy Pk 清华土匪帮帮主YiC 1,按人机交互方式 命令行-->图形界面-->自然交互(语音+手控) Tips:命令行(IBM大型机,小型机+ S ...
- python socket理论知识
一.socket理论: 发现一个很好的文章,一个高手写的,我也就不再做搬运工了,直接连接吧,对理论感兴趣的可以去看看! http://www.cnblogs.com/dolphinX/p/346054 ...
- AS3游戏中可视对象上限及位图相关的内存消耗实测
前些天连续做了一些测试,以加深对AS3的掌握和在项目中对 游戏 性能.效率优化方面的一些处理,有很多测试实际意义不大,都不过是证明一些猜想是正确的,除此没有什么. 但前天进行的一系列测试中,有一些对游 ...