java关键字:fianl的一些简单的用法

java关键字:fianl的一些简单的用法

引入的一个场景是:

有时候子类会去重写父类的方法方法,但是有时候不希望子类重写父类的方法

这个时候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:类  这个类不能别其他类继承


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);


}


}









版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/100817.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • JS 定义全局变量[通俗易懂]

    JS 定义全局变量[通俗易懂]JavaScript声明全局变量三种方式的异同JavaScript中声明变量格式:var(关键字)+变量名(标识符)。方式1vartest;vartest=5;需注意的是该句不能包含在function内,否则是局部变量。这是第一种方式声明全局变量。方式2test=5;没有使用var,直接给标识符test赋值,这样会隐式的声明了全局变量test。即使该语句是在一个func…

    2022年5月22日
  • 华为AAA认证详解

    华为AAA认证详解 AAA的基本构架 AAA通常采用“客户端—服务器”结构。这种结构既具有良好的可扩展性,又便于集中管理用户信息。如图1所示。 图1AAA的基本构架示意图  认证    不认证:对用户非常信任,不对其进行合法检查,一般情况下不采用这种方式。    本地认证:将用户信息配置在网络接入服务器上。本地认证的优点是速度快,可以为运营降低成本,缺点是存储信息量受设备硬件条…

    2022年6月7日
  • javaweb权限管理简单实现_javaweb用户权限管理

    javaweb权限管理简单实现_javaweb用户权限管理推荐最新技术springboot版权限管理(java后台通用权限管理系统(springboot)),采用最新技术架构,功能强大!注:由于该项目比较老,所以没有采用maven管理,建议下载springboot权限管理系统,对学习和使用会更有帮助。springboot权限管理系统介绍地址:https://blog.csdn.net/zwx19921215/article/details/978……………

    2022年9月26日
  • 小程序开发毕业设计_基于小程序的毕业设计

    小程序开发毕业设计_基于小程序的毕业设计基于微信小程序的培训机构系统前言:该系统作为本科毕业设计,可能还有很多的不足。只是当时做这个系统的时候,由于需要使用java语言作为后端实现与微信小程序界面数据交互,看遍网上很多的案例基本后台都是php语言用于编写接口,几乎没找到过java作为后台语言的案例。写这篇博客只是为了帮助需要后台使用java语言来实现的朋友。一、项目介绍微信小程序端:小程序端管理员实现对信息模块的管理,包含课程…

    2022年9月17日
  • C语言函数pow(c语言pow函数头文件)

    函数介绍pow(x,y)——求x的y次方函数模拟实现普通版:递减n的大小,逐次乘num#include<stdio.h>intmy_pow(intnum,intn){ if(n!=0) returnnum*my_pow(num,n-1); else return1;}intmain(){ printf(“%d\n”,my_pow(2,3)); return0;}优化版:依据n的奇偶性来进行递归处理#incl

    2022年4月11日
  • IsoAlgo3d – A PCF 3D Viewer for Desktop, Tablet and Smart phone

    IsoAlgo3d – A PCF 3D Viewer for Desktop, Tablet and Smart phone

    2022年3月8日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号