一、this關鍵字 1.可以調用的結構 this可以調用類的屬性、方法、構造器。 2.this調用屬性、方法 ①this調用屬性、方法,代表當前對象; ②在類的方法中,我們可以使用"this.屬性"或"this.方法"的方式,調用當前對象屬性或方法。但是,通常情況下,我們都擇省略"this."。特殊 ...
一、this關鍵字
1.可以調用的結構
this可以調用類的屬性、方法、構造器。
2.this調用屬性、方法
①this調用屬性、方法,代表當前對象;
②在類的方法中,我們可以使用"this.屬性"或"this.方法"的方式,調用當前對象屬性或方法。但是,通常情況下,我們都擇省略"this."。特殊情況下,如果方法的形參和類的屬性同名時,我們必須顯式的使用"this.變數"的方式,表明此變數是屬性,而非形參。
③在類的構造器中,我們可以使用"this.屬性"或"this.方法"的方式,調用當前正在創建的對象的屬性或方法。但是,通常情況下,我們都擇省略"this."。特殊情況下,如果構造器的形參和類的屬性同名時,我們必須顯式的使用"this.變數"的方式,表明此變數是屬性,而非形參。
public class test { public static void main(String[] args) { Person p = new Person(); p.name = "張三"; p.age = 18; p.show();//張三 p.eat("李四"); } } class Person{ String name; int age; public void show(){ System.out.println(this.name); } public void eat(String name){ System.out.println(name + "正在吃飯");//李四正在吃飯 System.out.println(this.name + "正在吃飯");//張三正在吃飯 } }
3.this調用構造器
①this調用構造器,代表當前正在創建的對象;
②我們在類的構造器中,可以顯式的使用"this(形參列表)"方式,調用本類中指定的其他構造器;
③構造器中不能通過"this(形參列表)"方式調用自己;
④如果一個類中有n個構造器,則最多有 n - 1構造器中使用了"this(形參列表)";
⑤規定:"this(形參列表)"必須聲明在當前構造器的首行;
⑥構造器內部,最多只能聲明一個"this(形參列表)",用來調用其他的構造器
public class test { public static void main(String[] args) { Person p = new Person(); Person p1 = new Person("張三", 18); } } class Person{ String name; int age; public Person(){ System.out.println("構造器1"); } public Person(String name){ this(); this.name = name; } public Person(int age){ this(); this.age = age; } public Person(String name, int age){ this(name); this.age = age; } }
二、package關鍵字
1.使用說明
1.為了更好的實現項目中類的管理,提供包的概念;
2.使用package聲明類或介面所屬的包,聲明在源文件的首行;
3.包,屬於標識符,遵循標識符的命名規則、規範(xxxyyyzzz)、“見名知意”;
4.每"."一次,就代表一層文件目錄。
2.JDK中的主要包
三、import關鍵字
import的作用是導入Java相關包或自定義包下的類或靜態結構(屬性、方法)。
具體說明:
1. 在源文件中顯式的使用import結構導入指定包下的類、介面;
2. 聲明在包的聲明和類的聲明之間;
3. 如果需要導入多個結構,則併列寫出即可;
4. 可以使用"xxx.*"的方式,表示可以導入xxx包下的所有結構;
5. 如果使用的類或介面是java.lang包下定義的,則可以省略import結構;
6. 如果使用的類或介面是本包下定義的,則可以省略import結構;
7. 如果在源文件中,使用了不同包下的同名的類,則必須至少一個類需要以全類名的方式顯示;
8. 使用"xxx.*"方式表明可以調用xxx包下的所有結構。但是如果使用的是xxx子包下的結構,則仍需要顯式導入;
9. import static:導入指定類或介面中的靜態結構:屬性或方法。
作者:Java之美
日期:2020-03-28