博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java final关键字特点
阅读量:5256 次
发布时间:2019-06-14

本文共 1982 字,大约阅读时间需要 6 分钟。

一、特点

1、由于继承,方法可以重写,所以父类的功能就会被子类覆盖

2、有时候我们不想子类覆盖父类的功能,这时候我们可以使用final关键字
3、final可以修饰:类、变量,方法。
4、final修饰类,该类不能被继承
5、final修饰变量,该变量不能被修改,因为这个变量是常量了
6、final修饰方法,该方法不能被重写

 

二、案例分析

1 package finals; 2 /** 3  * final关键字,案例1 4  * @author zhongfg 5  * @date 2015-06-16 6  */ 7 class Fu { 8      9     public final int num = 10;10     public final void secretMethod() {11         System.out.println("这里是绝密文件,不能修改");12     }13     14     public void show(){15         16     }17 }18 19 class Zi extends Fu {20     21 //    报错,final修饰的方法不能重写22     /*public void secretMethod() {23         System.out.println("我就是要修改,怎么的");24     }*/25     26     public void show() {27 //        num = 100; 报错,final修饰的变量不能被修改28         System.out.println(num);29     }30 }31 32 public class FinalDemo {33     34     public static void main(String[] args) {35         36         Fu fu = new Zi();37         fu.secretMethod();38         fu.show();39     }40 }41 42 运行结果:43 这里是绝密文件,不能修改44 10
View Code
1 package finals; 2 /** 3  * 面试题:final修饰局部变量问题 4  * 基本类型: 5  *         基本类型的值不能改变 6  * 引用类型: 7  *         引用类型的地址值不能改变,但是该对象的堆内存地址值可以改变 8  * @author zhongf 9  * @date 2015-06-1610  */11 class Student {12     13     int num = 10;14 }15 16 public class FinalInterview {17 18     public static void main(String[] args) {19         20         //局部变量是基本数据类型21         int x = 1;22         x = 2;23         System.out.println(x);24         25         final int y = 3;26 //        y = 4; 报错,无法为最终变量赋值27         System.out.println(y);28         29         System.out.println("---------------");30         31         //局部变量是引用数据类型32         Student s = new Student();33         s.num = 20;34         System.out.println(s.num);35         36         final Student ss = new Student();37         ss.num = 30;38         System.out.println(ss.num);39         40 //        ss = new Student(); 报错,无法为最终变量赋值41     }42 }43 44 运行结果:45 246 347 ---------------48 2049 30
View Code

 

转载于:https://www.cnblogs.com/zfg-technology/p/4581342.html

你可能感兴趣的文章
Java项目xml相关配置
查看>>
三维变换概述
查看>>
第三次作业
查看>>
vue route 跳转
查看>>
【雷电】源代码分析(二)-- 进入游戏攻击
查看>>
Entityframework:“System.Data.Entity.Internal.AppConfig”的类型初始值设定项引发异常。...
查看>>
Linux中防火墙centos
查看>>
mysql新建用户,用户授权,删除用户,修改密码
查看>>
FancyCoverFlow
查看>>
JS博客
查看>>
如何设置映射网络驱动器的具体步骤和方法
查看>>
ASP.NET WebApi 基于OAuth2.0实现Token签名认证
查看>>
283. Move Zeroes把零放在最后面
查看>>
Visual Studio Code 打开.py代码报Linter pylint is not installed解决办法
查看>>
Python 数据类型
查看>>
S5PV210根文件系统的制作(一)
查看>>
centos下同时启动多个tomcat
查看>>
slab分配器
查看>>
数据清洗
查看>>
【读书笔记】C#高级编程 第三章 对象和类型
查看>>