final详解
final的含义?
final:java中的关键字,意为“终态的”或者“无法改变的”。可用来修饰类、变量、方法。
变量(成员变量、静态变量、局部变量)
注意:
1、final变量即为常量,通常常量名大写。
2、final成员变量必须在声明时初始化或在构造器中初始化。
3、静态final成员变量必须在声明时初始化。
4、局部变量必须在声明时赋值。
5、final变量赋值后不能被修改。
6、final修饰方法中的参数时,参数在方法体中不能重新赋值。
7、接口中的变量可以不用明确的声明为final,因为变量默认为public static final。
代码:
public class ClassA {
public final String S1 = "this is S1 in ClassA";// 成员变量,声明时初始化
public final String S2;// 成员变量,在构造器中初始化
public static final String S3 = "this is S3 in ClassA";// 静态变量
public ClassA() {
S2 = "this is S2 in ClassA";
}
public String method1() {
final String S = "this is method1 in ClassA";// 局部变量
return S;
}
public String method2(final String S) {// final修饰方法中的参数
return S;
}
}
测试1:
public class MainClass {
public static void main(String[] args) {
ClassA a1 = new ClassA();
System.out.println(a1.S1);// this is S1 in ClassA
System.out.println(a1.S2);// this is S2 in ClassA
System.out.println(a1.S3);// this is S3 in ClassA
System.out.println(a1.method1());// this is method1 in ClassA
System.out.println(a1.method2("test"));// test
}
}
方法
注意:
1、final修饰的方法不能被子类重写。
2、final不能用来修饰抽象方法。
代码:
public class ClassA {
public final String method1() {
return "this is method1 in ClassA";
}
}
测试2:
public class MainClass {
public static void main(String[] args) {
ClassA a1 = new ClassA();
System.out.println(a1.method1());// this is method1 in ClassA
}
}
类
注意:
1、final修饰的类不能被继承。
2、final不能修饰抽象类和接口。
代码:
public final class ClassA {
public String s1 = "this is s1 in ClassA";
}
测试3:
public class MainClass {
public static void main(String[] args) {
ClassA a1 = new ClassA();
System.out.println(a1.s1);// this is s1 in ClassA
}
}
final详解的更多相关文章
- 11、final详解
1.final修饰成员变量 即该成员被修饰为常量,意味着不可修改. 对于值类型表示值不可变:对于引用类型表示地址不可变 其初始化可以在三个地方 ①:定义时直接赋值 ②:构造函数 ③:代码块{}或者静态 ...
- java关键字native、static、final详解
native: native关键字说明其修饰的方法是一个原生态方法,方法对应的实现不是在当前文件,而是在用其他语言(如C和C++)实现的文件中.Java语言本身不能对操作系统底层进行访问和操作,但是可 ...
- java 关键字final static native详解
java 关键字native static final详解 一.final 根据程序上下文环境,Java关键字final有"这是无法改变的"或者"终态的"含义, ...
- 最强Java并发编程详解:知识点梳理,BAT面试题等
本文原创更多内容可以参考: Java 全栈知识体系.如需转载请说明原处. 知识体系系统性梳理 Java 并发之基础 A. Java进阶 - Java 并发之基础:首先全局的了解并发的知识体系,同时了解 ...
- 多线程之 Final变量 详解
原文: http://www.tuicool.com/articles/2Yjmqy 并发编程网:http://ifeve.com/java-memory-model/ 总结: Final 变量在并发 ...
- java提高篇(十)-----详解匿名内部类 ,形参为什么要用final
在java提高篇-----详解内部类中对匿名内部类做了一个简单的介绍,但是内部类还存在很多其他细节问题,所以就衍生出这篇博客.在这篇博客中你可以了解到匿名内部类的使用.匿名内部类要注意的事项.如何初始 ...
- “全栈2019”Java第五十一章:继承与final关键字详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- abstract关键字、final关键字、static关键字、访问修饰符详解
abstract关键字.final关键字.static关键字.访问修饰符详解 abstract关键字: final关键字: static关键字: 访问修饰符:
- 详解 final 和 static
在我们上一篇博文中提到了 fianl 这个关键字,对于这个关键字,本人在初学时也耗费了极大地心血,甚至和师兄进行了激烈的讨论,并且,在我们讨论.尝试 以及 翻阅各种资料,最终得出了合适.易懂的解释. ...
随机推荐
- plsql中文乱码 显示问号
输入sql语句select * from V$NLS_PARAMETERS查看字符集,查看第一行value值是否为简体中文 解决方案: 新增环境变量 变量名: NLS_LANG 变量值: SIMPLI ...
- Linux (x86) Exploit 开发系列教程之二(整数溢出)
(1)漏洞代码 //vuln.c #include <stdio.h> #include <string.h> #include <stdlib.h> void s ...
- python-django-天天生鲜项目
1 需求分析 github源码:https://www.github.com/wangyingchuang/dailyfresh 1.1 用户模块 1) 注册页 l 注册时校验用户名是否已被注册. ...
- 20191030-带返回值的回溯算法Leetcode解数独
题目描述 编写一个程序,通过已填充的空格来解决数独问题. 一个数独的解法需遵循如下规则: 数字 1-9 在每一行只能出现一次. 数字 1-9 在每一列只能出现一次. 数字 1-9 在每一个以粗实线分隔 ...
- 模糊查询库的存储过程(SQLServer)
--查询带有自己需要内容的存储过程 SELECT ROUTINE_NAME, ROUTINE_DEFINITION FROM INFORMATION_SCHEMA.ROUTINES WHERE ROU ...
- asp.net core-7.在Core Mvc中使用Options
1,添加asp.net core mvc应用程序 2,添加Controllers控制器文件夹,Views视图文件夹 然后在Startup类中ConfigureServices方法中注册一下servic ...
- Intercity Travelling CodeForces - 1009E (组合计数)
大意: 有一段$n$千米的路, 每一次走$1$千米, 每走完一次可以休息一次, 每连续走$x$次, 消耗$a[1]+...+a[x]$的能量. 休息随机, 求消耗能量的期望$\times 2^{n-1 ...
- redis哈希表数据类型键的设置
命令名称:hset 语法:hset key field value 功能: 1)将哈希表key中的域field的值设为value. 2)如果key不存在,一个新的哈希表被创建并进行hset操作. 3) ...
- SQL查询oracle数据库最近备份情况
需求,查询RMAN备份情况,通过视图进行查询 SQL> //,) input_g, round(OUTPUT_BYTES///,) output_g order by ; SID OUTPUT_ ...
- Vue绑定的table页面在Chrome浏览器左右抖动
现象: 今天Chrome浏览器升级到最新版本(75.0.3770.100),突然发现之前vue页面只要绑定了el-table标签的,都在左右抖动,抖动得眼睛都花了,百度上找半天也没有遇到相同问题的人, ...