java关键字:fianl的一些简单的用法
2016-09-10 11:25
363 查看
引入的一个场景是:
有时候子类会去重写父类的方法方法,但是有时候不希望子类重写父类的方法
这个时候java 提供了一个关键字fianl来修饰
那么
子类中的方法不能重写被final修饰的方法
class Father{
public final void show(){
System.out.println("不能修改hello java");
}
}
class Son extends Father{
//编译报错:
//Son中的show()无法覆盖Father中的show()
//被覆盖的方法为final
public void show(){
System.out.println("我修改了hello java文件");
}
}
class Test{
public static void main(String[] args){
Son s = new Son();
s.show();
}
}
final关键字:
意思是最终的
它可以修饰类、方法、变量
final修饰:
A:类 这个类不
4000
能别其他类继承
B:方法 这个方法不能被子类重写
C:变量
a:类型为基本数据类 这个变量就称为了常量,常量一旦被赋值就不能再次赋值了,不然就报错了
常量:字面常量 "kevin" "cidy",10,12等
自定义常量:fianl String num = "001";
b:类型为引用数据类型的时候 地址值不会改变,但是堆内存中的值可以进行修改
比如:
class Student{
int age =10;
}
class StuTest{
public static void main(String[] args){
Student s = new Student();
System.out.println(s.age)://输出结果为:10;
final Student s2 = new Student();
s2.age=100;
System.out.println(s2.age);//输出结果为100;
}
}
在修饰变量(数据类型为基本数据类型的时候)
如果这个变量被赋了初始值,那么这个变量就不能在被赋值,不然会报错。
public class Test3{
public static void main(String[] args){
final int a =12;
System.out.println("a = "+a);
//错误: 无法为最终变量a分配值
a = 21;
System.out.println("a = "+a);
}
}
有时候子类会去重写父类的方法方法,但是有时候不希望子类重写父类的方法
这个时候java 提供了一个关键字fianl来修饰
那么
子类中的方法不能重写被final修饰的方法
class Father{
public final void show(){
System.out.println("不能修改hello java");
}
}
class Son extends Father{
//编译报错:
//Son中的show()无法覆盖Father中的show()
//被覆盖的方法为final
public void show(){
System.out.println("我修改了hello java文件");
}
}
class Test{
public static void main(String[] args){
Son s = new Son();
s.show();
}
}
final关键字:
意思是最终的
它可以修饰类、方法、变量
final修饰:
A:类 这个类不
4000
能别其他类继承
B:方法 这个方法不能被子类重写
C:变量
a:类型为基本数据类 这个变量就称为了常量,常量一旦被赋值就不能再次赋值了,不然就报错了
常量:字面常量 "kevin" "cidy",10,12等
自定义常量:fianl String num = "001";
b:类型为引用数据类型的时候 地址值不会改变,但是堆内存中的值可以进行修改
比如:
class Student{
int age =10;
}
class StuTest{
public static void main(String[] args){
Student s = new Student();
System.out.println(s.age)://输出结果为:10;
final Student s2 = new Student();
s2.age=100;
System.out.println(s2.age);//输出结果为100;
}
}
在修饰变量(数据类型为基本数据类型的时候)
如果这个变量被赋了初始值,那么这个变量就不能在被赋值,不然会报错。
public class Test3{
public static void main(String[] args){
final int a =12;
System.out.println("a = "+a);
//错误: 无法为最终变量a分配值
a = 21;
System.out.println("a = "+a);
}
}
相关文章推荐
- 用java实现结婚、离婚小程序,其中有一些判断条件,正确掌握this关键字的用法
- 关于java语言数组的一些简单用法
- JAVA fianl关键字用法
- 模拟java.util.Collection一些简单的用法
- java多线程 synchronized关键字的一些用法
- Java中的Enum用法的一些简单介绍
- 【知了堂学习笔记】Java中static关键字的一些简单使用方法
- Java中的Final关键字用法汇总及简单示例
- Java关键字this与super用法总结
- 一些简单网络命令用法
- java final 的一些用法
- java中的synchronized关键字 用法
- java技术之01 关键字this的三大用法
- java中Date的一些用法
- Substring 的一些简单用法
- java中Date的一些用法
- java 中一些批注的用法
- 【Java】简单总结一下Java中printf()的用法
- VC++的一些简单用法
- 发邮件 上传图像 JS中的EVENT GRIDVIEW的简单应用 JS中一些寻找控件的用法