final
fina在程式之中描述的是種終接器的概念,在java裡面使用final關鍵字可以實現功能:
- 定義不能夠被繼承的類
- 定義不能夠被覆寫的方法、常量
範例:使用final定義不能被繼承類
class JavaDemo
{
public static void main(String[] args)
{
System.out.println("Hello World!");
}
}
final class Channel//這個類不能夠有子類
{
}
class DabaseChannel extends Channel//試者去繼承final定義的Channel
{
}
當子類繼承了父類之後實際上是可以進行父類中方法覆寫的,但是如果你不希望某一個方法被子類覆寫,就可以使用fanal來進行定義。
範例:
class JavaDemo
{
public static void main(String[] args)
{
System.out.println("Hello World!");
}
}
class Channel
{
public final void connect(){//這個方法不能被覆寫
}
}
class DabaseChannel extends Channel
{
public void connect(){//試者覆寫這個方法
}
}
在有些系統開發之中,可能使用1表示開關開啟,使用0表示關閉,如果現在要直接操作0或1會造成混亂,所以就希望通過一些名稱來表示0或者1。在final關鍵字裡面有一個重要的應用技術,可以利用其定義常量,常量的內容一旦定義不可修改。
範例:
class JavaDemo
{
public static void main(String[] args)
{
}
}
class Channel
{
private final int on = 1;//on就是常量,不能再被修改
private final int off = 0;
public void setOn(){
this.on = 2;
}
}
常量往往是公共的定義,為了可以體現出共享的概念,往往會使用一種全域性常量的形式來定義:public static final
public static final int ON= 1;
在定義全域性常量的時候每一個字母都必須大寫表示。
範例:
class JavaDemo
{
public static void main(String[] args)
{
String strA = "www.baidu.com";
String strB = "www."+"baidu"+".com";
System.out.println(strA == strB);
}
}
在方法的時候也可以使用final來定義引數,此時也表示一個常量的概念。
class JavaDemo
{
public static void main(String[] args)
{
final String info = "baidu";//此引數為常量
String strA = "www.baidu.com";
String strB = "www."+info+".com";
System.out.println(strA == strB);
}
}
如果info是變數則結果為false,但因為info變成了常量不會在改變,所以結果為true。
相關文章
- JAVA finalJava
- EC-Final 2023 & CCPC Final 2023 遊記
- 2018 China Collegiate Programming Contest Final (CCPC-Final 2018)
- java中的Static、final、Static final各種用法Java
- final和finalize
- final:finalize:finally:
- JOI 2018 Final
- Reflective Journal Final
- final修飾和static final修飾的區別
- static/final/常量模式模式
- 對於final理解
- c++final用法C++
- final關鍵字
- F. Final Boss
- E. Final Countdown
- Final Cut Pro中文新手教程 (1) 基礎認識Final Cut Pro
- final、finally、finalize的理解
- static,private,final,abstract,protected
- Apple Final Cut Pro 10.4.8APP
- final域、Atomic和ThreadLocalthread
- 報錯-only final is permittedMIT
- [JOI 2013 Final]彩燈
- [JOI 2013 Final]JOIOI 塔
- [JOI 2024 Final] 室溫
- Java Final關鍵字Java
- [Java物件導向]finalJava物件
- final關鍵字深入解析
- Netty 4.1.98.Final 釋出Netty
- 反射修改 static final 變數反射變數
- Java入門系列之finalJava
- final,finally,finallize的區別
- Java中final關鍵字Java
- Java 關鍵字之 finalJava
- final修飾Map的作用
- final修飾String的作用
- java基礎-關鍵字finalJava
- 【java】final、finally、finallize的區別Java
- final,finalize,finally的不同之處