程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程解疑 >> 變量-有很多問題(問題在文中),希望有人幫忙解答。謝謝大家

變量-有很多問題(問題在文中),希望有人幫忙解答。謝謝大家

編輯:編程解疑
有很多問題(問題在文中),希望有人幫忙解答。謝謝大家

1.如何實現輸入一個數判斷健康值? 2.對於private類型的變量,如果要改變變量的值,是在set中改還是在下面的dog.setLove(16)這裡改?
package study;

public class Dogs {
private String strain = "拉布拉多犬";
private int health = 100;
private int love = 0;

public String getStrain() {
    return strain;
}

public void setStrain(String strain) {
    this.strain = strain;
}

public int getLove() {
    return love;
}

public void setLove(int love) {
    this.love = 50;
}

public int getHealth() {
    return health;
}

//如何實現從鍵盤輸入一個數
public void setHealth(int health){
    if(health > 100 || health < 0) {
        this.health = 40;
        System.out.println("健康值應該在0——100之間,默認值是40");
    }else
        this.health = health;
}

public static void main(String[] args) {
    Dogs dog = new Dogs();

    dog.getHealth();
    System.out.println(dog.getHealth());

    dog.setLove(16);
    System.out.println(dog.getLove());

    dog.setStrain("大黃狗");
    System.out.println(dog.getStrain());
}

}

最佳回答:


1.

//輸入一個健康值
 Scanner scan = new Scanner(System.in);
 int health = scan.nextLine();
 //將健康值set進入你實例化的dog裡。
 //因為你在setHealth()方法中有判斷了,所直接set進去就可以了,會自行判斷,
 //超出范圍會執行你的system.out,並且把health改為40,否則正常賦值
 dog.setHealth(health);
 System.out.println(dog.getHealth());

2.對於第二個問題,private類型的變量,在定義的實體類中,可以直接賦值與更改,就是在你的dog這個Class類中可以直接調用。
private是Java中對於類的屬性的封裝包裝,限制了其他類方法對其的直接調用,所以再main主程序,或者使用其他類的程序下,
是不能直接調用private修飾的屬性的。所以需要調用提供有public修飾的set方法進行設置,同理想要獲取那個值,則要調用public修飾的get方法

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved