隱藏類中的屬性和實現細節,對外只提供公共的訪問方式
安全性可以使用流程控制語句對值的限制
只能用我提供的訪問方式來訪問
this :表示本類物件
作用:區別成員變數和區域性變數同名
呼叫本類構造器:
注意:this呼叫本類構造器的話,位置必須寫在構造器的第一行**處;必須寫在 構造器中
set get 訪問器:乙個屬性對應兩個訪問器;
alt+shift+s可以快捷生成get,set訪問器
//封裝示例**
class book
public void setpagenum(int pagenum) else
} public string gettitle()
public void settitle(string title)
public void show ()
}public class ex1
}
通常在乙個類中,方法名相同,引數裂變不同(型別、個數、順序),與返回值無關
作用:方便記憶!
//過載示例
package day14;
class test
public void f(byte n)
public void f(short n)
public void f(long n)
public void f(double n1 ,double n2)
//----------------------------------
//不能過載:原因:因為可變引數就是陣列
public void f(int ...n)
// public void f(int n)
//-----------------------------
//優先呼叫int。原因:為了**的相容
public void method(int ...n)
public void method(int n)
//-----------------------------------
public void func(test ...n)
public void func(string ...s)
}public class ex2
}
格式:
訪問修飾符 構造方法名字(引數列表)
public void setname(string name)
public int getage()
public void setage(int age)
public void show()
//訪問許可權和類相同
/* teacher()*/
//帶參構造器
teacher(string name , int age)
//顯示定義乙個構造器
teacher()
}public class ex4
}this() ; 呼叫本類的無參構造器,位置必須寫在構造器的第一行**處
也可以呼叫帶參構造器,系統會根據引數個數去找
使用構造器的好處:可以一次性定義相同的屬性
構造塊作用:多個構造方法過載時
定義:在類中定義
執行:在建立new物件時,先執行構造快,後執行構造器
//構造器呼叫示例**
package day14;
class role
public role()
public role(string job)
public role(string ***,int age ,string job)
public role(string name,string ***,int age ,string job,string address)
public void show()
}public class ex5
}
預設初始化
宣告處初始化
構造塊初始化
2.3看**中的位置
構造器定義:組織類和介面
package 包名[.子包]
包名命名規範:所有字母都小寫
資料夾的作用,管理檔案
解決檔案命名衝突的問題
更好地保護類和類中的成員
注意:
同乙個專案下,包名不能相同
命名習慣:一般網域名稱反轉.部門名字.專案名
同一包下的類,可以直接訪問
不同類下的包:導包import,或者使用完全命名的方式(b.b = new b.b();呼叫b包下的b類
使用注意:
包名 .*不會匯入子包的型別
兩個包下的類名相同,必須用完全限定命名的方式使用
Android溫習之路Day7 java基礎7
之前講過了類與物件還有封裝等知識,不懂得夥伴可以再去溫習一下這片文章 今天呢咱們來說一下幾個關鍵字this static這兩個關鍵字,這兩個關鍵字是比較常用的所以呢以後會經常和這兩個關鍵字打交道,咱們先來說一下this,this 代表的就是乙個物件,哪個物件呼叫了this所在的函式,那麼他就代表了哪...
java 封裝 繼承 過載 重寫
目的 為了維護程式安全穩定性,保護底層資料 行為 一切為了維護程式的安全穩定性,保護底層資料的行為,都稱之為封裝。具體體現 私有屬性,公有方法 私有構造,靜態方法返回類物件 內部類 並列內部類包含內部類 public 該類和非該類均可訪問 private 只有該類可訪問 protect 該類及其子類...
java的重寫 過載以及繼承 多型和封裝
要了解函式的過載首先我們得有乙個函式,所以我隨便的寫了乙個求最大值的函式 首先我們先隨便定義乙個函式 就比如這個求兩個數最大值的。public static void max int a,int b 之後我們來看看哪些是屬於過載的函式 public static int max int a,int ...