Java隱式引數this

2021-08-09 03:01:54 字數 603 閱讀 3171

1、每個方法都都會有兩個隱式引數乙個this,乙個super

2、在普通方法中this指向呼叫該方法的物件

3、構造方法中this指向正要初始化的物件

4、反正不管怎麼樣,一句話,this指向呼叫我的那個物件

5、this不用用於靜態方法,原因很簡單,由於static屬性和方法從屬於類,靜態方法中不包含this,super隱式引數,也就是不包含物件的位址資訊

6、可以用this(引數)來呼叫其他的過載的構造器,且只能放在方法的第一句;例如一下**:

public

class

student

public

student(string name)

public

student(string name,string id)

}

7、注意以下的**是不合法的,原因很簡單,this在構造器中指向正在初始化的那個物件,那也就是說現在的這個物件還無法獲取到「張三的常量池位址」,所以是錯誤的,除非「張三是個靜態屬性」

public

student()

隱式轉換和隱式引數

1 隱式轉換 隱式轉換函式是以implicit關鍵字宣告的帶有單個引數的函式。這種函式將會自動應用,將值從一種型別轉換為另一種型別 object scala01 implicit def f1 d double int double 是輸入型別,int 是轉換後的型別 隱式函式的底層工作原理 def...

Scala的隱式引數 隱式值 隱式物件

trait calc t 使用隱式值轉換到隱式引數 class multiplywithint extends calc int class multiplywithstring extends calc string 定義隱式值 implicit val i new multiplywithint...

scala隱式引數 隱式函式 隱式類詳解

隱式函式 隱式類1 定義乙個普通變數,使用 implicit 關鍵字修飾,定義乙個函式呼叫這個變數當引數時,此時這個引數就被稱為隱式引數 2 隱式引數的作用 減少提供函式引數的數量,讓某些引數擁有隱藏的值 隱式變數 def main args array string unit def fun2 a...