1.私有屬性
private
class Student{
private String sex;
private String name;
private int age;
}
2.this的使用
注意
this可以出現在構造方法和實例方法中,不可以出現在類方法中
所以在類中的static void f(){}這種類方法出現this是不對的
但是又會出現成員變量和局部變量名重複的情況,
以下爲錯誤示例和解決示例
class People{
static int x;
static void set(int x){
this.x = x;//意思想讓參數x的值賦給成員變量x
//因爲this不能出現在類方法中,所以錯誤!
}
解決方案
class People{
static int x;
static void set(int x){
People.x = x;
}
//既然x是People共享的,這樣就可以解決了
//但是需要注意的是,既然是共享的變量,則一改全改,劃重點!!
①在構造方法中使用this.成員變量(當在方法中成員變量和局部變量重名時)
當在構造方法中使用this時,它指的是正在創建的這個對象。
情況1—→可以指代成員變量
class Student{
private String sex; //1
private String name; //2
private int age; //3
Student (String sex,String name,int age){
this.sex = sex; //this.sex指的是1處的成員變量sex
this.name = name; //this.name指的是2處的成員變量name
this.age = age; //this.age指的是3處的成員變量age
} //意思是成員變量sex\name\age
//被局部變量參數sex\name\age修改。
}
情況2—→可以指代創建的對象
public class People{
String name;
People(String s){
name = s;
this.words(); //1
}
void words(){
String word = new String ("Be confident!");
System.out.println(name+" "
+"said to him self"+" "+"'"+word+"'");
}
public static void main(String args[]){
People Mustang = new People("Mustang");
}
}
//創建對象“Mustang”的時候
//1處構造方法中的this指代的就是對象 Mustang
//最終輸出Mustang said to him self 'Be confident!'
②在構造方法或實例對象中使用this(參數)來調用其他構造方法
實例方法一定是對象調用,當一個對象調用一個實例方法時,實例方法
中的this指的就是當前正在調用的對象.
public static void main(String args[]){
People Mustang = new People("Mustang");
}
public class People{
String name;
People(String s){
name = s;
this(); //調用1處無參的構造方法
}
People(){ //1
String word = new String ("Be confident!");
System.out.println(name+" "
+"said to him self"+" "+"'"+word+"'");
}
}
注意,在調用的有參數的構造方法時,應在this後面的括號內帶上具體的類型值,而不僅僅是類型而已
class Test {
public Test(int x){ //1
System.out.println("I'm the best");
}
public Test(){
this(1);//調用1處的構造方法,不僅限於1.只要是整數類型的數值都可以。
System.out.println("I'm the best");
}
}
3.類可以有內部類,而方法不可以嵌套
4.一個對象可以有多個引用