jQuery選擇器
686
2022-05-30
構造方法、static、匿名對象、封裝、javaBean、this、package、import、訪問權限
構造方法:
1. 創建對象
2. 為字段初始化
特點:
方法名和當期類名一樣;
不允許定義返回值類型
每個類至少有一個構造方法:公共無參的
格式: public 類名(){}
若顯示的寫了一個類的構造方法,默認的就會被取消;
構造方法的重載:
this([實參]);調用當前類的構造方法
注意: this([實參]);必須放在構造器的第一行;
我不想讓外界創建對象:
此時只需要把構造方法 private 修飾;
不一定:學了反射,一切私有都是浮云;
static :
表示這一類事物的特征/狀態或行為;
特點:
1. static 修飾的成員隨著類的加載而加載;
2. 優先于對象的存在;
3. 被所有對象所共享;
4. 可以直接使用類名調用;
使用 static 修飾的方法或字段或內部類: 類成員
沒有使用 static 修飾的方法或字段或內部類: 實例成員
調用類成員:
1.該成員所在類的類名.類成員;
2.該成員所在類的一個對象.類成員;(不建議使用, Java在底層也是把對象給轉成類的)
在實例方法里能不能調用類成員? YES
在靜態方法里能不能調用類成員? YES
調用實例成員:
該成員所在類的一個對象.實例成員;
不能直接使用類名調用;
在實例方法里調用實例成員? YES
在靜態方法里調用實例成員? NO
匿名對象:
一個沒有名字的對象, 創建了一個對象出來,沒有賦給一個變量;
new Person();
特點: 只在堆里面開辟存儲區域,
只能使用一次, 使用完就被銷毀了;
...main...
{
Person p = new Person();
show(p);//必須傳入一個Person對象
//
show(new Person());
}
static void show(Person p)
{
}
封裝:
1.把狀態和行為看做是一個整體,放在一個獨立的模塊(類)中;
2.把不想讓外界知道的信息給隱藏起來,只提供外界所關心的方法;
在程序里的體現:
類里面所有的字段統統給私有起來,(使用private修飾);
每一個被私有化起來的字段,一般都得提供一對 getter/setter
private String name;
getter: 獲取字段的值
public String getName()
{
return this.name;//return name;
}
setter: 給一個字段設置一個值
public void setName(String n)
{
this.name = n;
}
public void setName(String name)
{
//name = name;
//name = this.name;//ERROR
this.name = name;
}
boolean 類型沒有getXXX方法,取而代之 isXXX
JavaBean的規范:
1.保證每一個類都有一個無參的公共的構造方法
2.每一個字段都得私有化起來
3.私有化起來之后,必須提供getter/setter
怎么去寫getter/setter?
1.若字段的第二個字母是小寫的話,那么就直接把字段的第一個字母大寫,然后加在gett或set后面
2.若字段的第二個字母是大寫的話,那么就直接把字段加在get或set后面
private String cPU;//故意寫的
public String getcPU()
{
return cPU;
}
public void setcPU(String cPU)
{
this.cPU = cPU;
}
屬性:什么才是真正的屬性呢? 不是字段,不能把字段成為屬性
是根據getter與 setter決定的:
this: 表示當前對象
誰調用方法誰就是當前對象
this.字段
this.方法
this(參數);//構造器調用構造器
this 和 static 不能共用
// 一個對象調用OOXX方法之后,又繼續調用OOXX方法,如此循環...
//鏈式編程
p.show().show().show().show();
class Person
{
public Person show(){
//return Person的對象;
return this;
//返回調用者對象
}
}
//show()必須得讓Person的一個對象來調用
new Person().show().show();
package 表示包:
給一個類聲明一個包:
在這個類的源文件的第一行
package 包名.子包名...;
全限定名: 包名.子包名.....類名
編譯:javac -d . 源文件.java
運行:java 全限定名
包名必須符合標識符: 全小寫,不能使用 jdk里面的包名
cn.itcast.cd.項目名.模塊名.組件名
cn.itcast.cd.erp.crm.util
jdk常見的包;
java.lang;//Java核心包 使用這個包下的類的時候,不需要我們手動的去導入需要使用的類
java.util;//Java工具類包
import: 表示 去哪個包下去找使用到的類;
存放位置: 存放于 類的聲明之前, 放在 package 的后面;
使用: java.util.Date
import java.util.Date;
import java.util.*; 去java.util包去找你當前源文件需要使用到的類;
*表示類,
不能表示java.util下的子包的類;
Java里四大訪問權限修飾符:
當前類 當前包 子類 任何地方
private YES
default(不寫訪問權限) YES YES
protected YES YES YES
public YES YES YES YES
Java
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。