首页 > Java资讯 > Java中final关键字有哪些作用

Java中final关键字有哪些作用

更新时间:2020-07-03 16:13 浏览104次 来源:动力节点


final关键字可以用于三个地方。用于修饰类、类属性和类方法。


被final关键字修饰的类不能被继承,被final关键字修饰的类属性和类方法不能被覆盖(重写);


对于被final关键字修饰的类属性而言,子类就不能给他重新赋值了,如果重新赋值,会报错:


Java中final关键字有哪些作用


下图所示,当我们直接给name赋值时,因为父类中的name属性被final修饰,所以eclipse会报错。但是这里有一个特别容易混淆的地方:


Java中final关键字有哪些作用


请注意,我们在name之前加上了一个String关键字,其结果是从新发定义了一个变量,虽然变量名都是name,但是在内存中占用的区域却不同,所以不与之冲突,不会报错。


接下来是在类方法前加上final关键字的用法。与类属性类似,父类方法如果用final关键字进行修饰,那么不能被覆盖,但要说明一点的是,不能被重写是指不能同时和和父类方法同名,同参数,换句话讲,只要子类中的方法与父类中的方法同名,同参数列表,即使返回值不同,仍然是属于重写的范畴


Java中final关键字有哪些作用


这里的子类方法报错,是因为他与父类中的print方法同名同参数,即使他们返回值不同,但仍然是属于重写的范畴。所以这里有一个小结论:


重写:只要子类方法与父类方法同名同参数就是重写。


以上就是动力节点java培训机构的小编针对“Java中final关键字有哪些作用”的内容进行的回答,希望对大家有所帮助,如有疑问,请在线咨询,有专业老师随时为你服务。


热门课程推荐

全部班型支持免费试学

动力节点在线报名表(此信息已加密,请放心填写)

返回顶部