上一篇文章我们讲了 java 中 static 关键字的使用,这里再将一下 final 关键字的使用。final 在 java 中可以看做一个“终结者”,它可以定义类、定义方法和定义变量。
当定义类的时候,该类不能被继承
当定义方法的时候,该方法不能被子类覆盖(Override)
当定义变量的时候,该变量只能在定义的时候初始化,后期不能做改变,即变为一个常量。
哎呀,好像没别的可说了,就这样吧,这可能是我写过的字数最少的一篇文章了
算了,最后加一个示例程序吧,当然是错误的程序,包含了以上三种使用方法的错误使用报错信息:
package com.example.finalDemo;/** * User: sunriseydy * 2018-4-25 22:04 */finalclassPerson{String name ="张三";finalString city ="北京";publicPerson(){ city ="上海";/*city 报错:Cannot assign a value to final variable "city"*/}finalpublicvoid print (){System.out.println("我叫"+name+" 来自"+city);}}class student extendsPerson{/*Person 报错:Cannot inherit from final 'com.example.finalDemo.Person'*/int id =1;publicvoid print (){/*上一行报错:'print()' cannot override 'print()' in 'com.example.finalDemo.Person'; overridden method is final */System.out.println("我叫"+name+" 来自"+city+" 学号为"+id);}}publicclassFinalClassDemo{publicstaticvoid main(String[] args){}}
就这样吧
博客文章地址:https://blog.sunriseydy.top/technology/code/java/java-final/