温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Final关键字

发布时间:2020-08-18 18:11:33 来源:网络 阅读:461 作者:Undertaker16 栏目:开发技术

Final关键字

final关键字
final关键字可用于修饰类,变量和方法,它有“这是无法改变的”或者“最终”的含义,因此被final修饰的类、变量和方法将具有以下特性:

final修饰的类不能被继承

final修饰的方法不能子类重写

final修饰的变量(成员变量和局部变量)是常量,只能赋值一次

 

final关键字修饰类

Java中的类被final关键字修饰后,该类将不可以被继承,也就是不能够派生子类:
final class Animal{ 方法体为空}
class Dog extends Animal{ 方法体为空 }
class Example06{
public static void main(String [] args){
Dog dog=new Dog();
}
}
以上代码,编译时报错,由此可见,被final关键字修饰的类为最终类,不能被其他类继承。

final关键字修饰方法

当一个类的方法被final关键字修饰后,这个类的子类将不能重写该方法:
class Animal{  
public final void shout(){}
}
class Dog extends Animal{
//重写父类的shout()方法
public void shout(){}
}
class Demo{
public static void main(String [] args){
  Dog dog=new Dog();
}
}
编译时报错,当父类的方法不希望被子类重写时,就可以使用final关键字修饰该

 

final关键字修饰变量

Java中被final修饰的变量为常量,它只能被赋值一次,也就是说final修饰的变量一旦赋值,就不能被改变,如果再次对该变量进行赋值,则程序会在编译时报错:
final int num=0;
num=1;  //报错

final关键字修饰成员变量是,虚拟机不会对其进行初始化,因此使用final修饰成员变量时,需要在定义变量的同时赋予一个初始值。
final String name; //报错

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI