今天開始學java(九):private關鍵字的作用與this關鍵字的作用

如果你在定義一個變量的時候前面加入了private關鍵字,那麼這個關鍵字在本類中可以隨意訪問,但是,超出了本類範圍之外就不可以直接訪問了。
可以使用get/set方法間接訪問:
get/set方法格式爲get/set+變量名(變量名首字母需要大寫)
舉一個例子,這個例子是將age變量前加入private關鍵字,然後在第二個類當中使用name與age方法:

public class Person {
    String name;
    private int age;
    public void show(){
        System.out.println("我叫"+name+"今年"+age);
    }
//    專門用於向age設置數據↓↓set必須有參數無返回,參數類型必須和set的對象一直名稱規則爲set首字母大寫
    public void setAge(int num){
        if (num<100 && num>=0){
            age = num;
        }else{
            System.out.println("年齡不合理");
        }
    }
//    這個成員方法,專門用於獲取age的數據↓↓get什麼必須沒有參數有返回值,返回值類型需要和成員變量對應,名稱必須交get+首字母大寫
    public int getAge(){
        return age;
    }
}

第二個類的直接訪問與間接訪問:

public class Demo01person {
    public static void main(String[] args) {
        Person person = new Person();
        person.show();
        person.name = "yibole";
        person.setAge(20);//這就是間接訪問
        person.show();
    }
}

間接訪問private成員變量,就是定義一對Getter/Setter方法
對於基本類型當中的boolean值,Getter方法一定要寫成isXxx的形式,而setXxx類型不變

private boolean male;//是不是男的
    public void setMale(boolean b){
        male = b;
    }
    public boolean isMale(){
        return male;
    }

this關鍵字的作用

當方法的局部變量和類的成員變量重名的時候,根據“就近原則,優先使用局部變量,
如果需要訪問本類當中的成員變量(局部變量),需要使用格式:
this.成員變量名
通過誰調用的方法,誰就是this,this一定是寫在方法中的

public class Person {
    String name;
    public void sayHello(String name){
        System.out.println(name+",你好,我是"+this.name);
    }
}

這時候調用person.name並賦值“hanwenwen”和調用person.sayhello並賦值"yibole"就會出現hanwenwen,你好,我是yibole

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章