爪哇 中的Final关键字(带示例)
在这篇文章中,我们将看到有关final关键字的信息 爪哇 。最终关键字可以与以下内容关联:
- 变量
- 方法
- 类
当您希望限制他人进行任何更改时,通常使用Final。
让’s逐一进行。
最终变量
1 2 3 4 5 6 7 8 9 10 11 12 13 |
包 组织 . Arpit . 爪哇 2blog; 上市 类 最终范例{ 最后 整型 计数 =10; 上市 虚空 setCount() { 计数 =20; } } |
空白最终变量
1 2 3 4 5 6 7 8 9 |
包 组织 . Arpit . 爪哇 2blog; 上市 类 最终范例 { 最后 整型 计数 ; } |
您可以在构造函数中一次初始化最终变量,如下所示。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
包 组织 . Arpit . 爪哇 2blog; 上市 类 最终范例 { 最后 整型 计数 ; 最终范例( 整型 计数 ) { 这个 . 计数 = 计数 ; } 上市 静态的 虚空 主要 ( 串 args []) { 最终范例 FE = 新 最终范例(10); 系统 . 出 .打印( FE . 计数 ); } } |
上面的代码可以正常工作。您可能正在考虑可能会使用它。
让’s说您有Employee类,它有一个名为empNo的属性。创建对象后,您无需’要更改empNo。
因此,您可以将其声明为final并在构造函数中对其进行初始化。
静态空白最终变量
静态空白最终变量为 静态的 声明时尚未初始化的变量。它只能在静态块中初始化。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
包 组织 . Arpit . 爪哇 2blog; 上市 类 最终范例 { 静态的 最后 整型 计数 ; 静态的 { 计数 =10; } 上市 静态的 虚空 主要 ( 串 args []) { 系统 . 出 .打印(最终范例. 计数 ); } } |
当您运行上述程序时,将获得以下输出:
最终方法
您不能在子类中覆盖最终方法。你可以打电话给父母’s类的最终方法,使用子类’的对象,但不能覆盖它。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
包 组织 . Arpit . 爪哇 2blog; 上市 类 形状 { 上市 最后 虚空 画 () { 系统 . 出 .打印(“形状类中的绘制方法”); } } 类 长方形 延伸 形状 { 上市 虚空 画 () { 系统 . 出 .打印(“形状类中的绘制方法”); } 上市 静态的 虚空 主要 ( 串 args []) { 长方形 长方形= 新 长方形(); 长方形. 画 (); } } |
"无法覆盖Shape中的最终方法".
如果从矩形类中删除绘制方法,它将很好地工作。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
包 组织 . Arpit . 爪哇 2blog; 上市 类 形状 { 上市 最后 虚空 画 () { 系统 . 出 .打印(“形状类中的绘制方法”); } } 类 长方形 延伸 形状 { 上市 静态的 虚空 主要 ( 串 args []) { 长方形 长方形= 新 长方形(); 长方形. 画 (); } } |
当您运行上述程序时,将获得以下输出:
期末班
如果将一个类声明为final,则其他任何类都不能扩展它。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
包 组织 . Arpit . 爪哇 2blog; 最后 类 形状 { 上市 最后 虚空 画 () { 系统 . 出 .打印(“形状类中的绘制方法”); } } 类 长方形 延伸 形状 { 上市 静态的 虚空 主要 ( 串 args []) { 长方形 长方形= 新 长方形(); 长方形. 画 (); } } |
"Rectangle类型不能将最终的Shape子类化".
最终关键字摘要
- 您可以将final关键字与变量,方法和类一起使用。
- 您不能在构造函数中使用final关键字。
- 如果不初始化最终变量(除非在构造函数中分配),则会出现编译错误。
- 初始化后,您将无法更改最终变量的值。
- 您不能在子类中覆盖final方法。
- 您不能扩展任何最后的课程。
您可能还喜欢:
爪哇 中带有示例的static关键字