ผลต่างระหว่างรุ่นของ "Oop lab/example codes"

จาก Theory Wiki
ไปยังการนำทาง ไปยังการค้นหา
แถว 63: แถว 63:
 
     }
 
     }
 
}
 
}
 +
</syntaxhighlight>
 +
 +
<syntaxhighlight lang="java">
 +
    public static void main(String[] args) {
 +
        Dog d = new Dog("Dang",15, 4.5);
 +
 +
        // ...
 +
 +
        Dog.setFoodPriceRate(0.25);
 +
        System.out.println("Current price rate is " + Dog.getFoodPriceRate());
 +
        System.out.println(d.getName() + " has to pay " + d.getFoodPrice());
 +
    }
 
</syntaxhighlight>
 
</syntaxhighlight>

รุ่นแก้ไขเมื่อ 02:15, 10 พฤศจิกายน 2560

class และ instance variables

public class Dog {
    private int weight;
    private double speed;
    private String name;
    
    Dog(String n, int w, double speed) {
        name = n;
        weight = w;
        this.speed = speed;
    }

    public void sayHello() {
        System.out.println("Hello, my name is " + name);
    }
    
    public String getName() {
        return name;
    }
    
    public double getSpeed() {
        return speed;
    }    
    
    public double runDuration(double distance) {
        return distance / speed;
    }
    
    public double weightOnMoon() {
        return ((double)(weight)) / 6.0;
    }

    public static void main(String[] args) {
        Dog d = new Dog("Dang",15, 4.5);
        
        d.sayHello();
        System.out.println("It takes " + d.getName() + 
                " " + d.runDuration(100) + 
                " seconds.");
        System.out.println("In the moon, " + d.getName() + 
                " weights " + d.weightOnMoon());
    }
}

static variables (class variables) และ static method

public class Dog {
    private int weight;
    private double speed;
    private String name;

    // ....

    static double foodPriceRate;
    
    public static double getFoodPriceRate() { return foodPriceRate; }
    public static void setFoodPriceRate(double rate) { foodPriceRate = rate; }

    public double getFoodPrice() {
        return weight * foodPriceRate;
    }
}
    public static void main(String[] args) {
        Dog d = new Dog("Dang",15, 4.5);

        // ...

        Dog.setFoodPriceRate(0.25);
        System.out.println("Current price rate is " + Dog.getFoodPriceRate());
        System.out.println(d.getName() + " has to pay " + d.getFoodPrice());
    }