Mengapa ada keuntungan menggunakan metode statis dan meneruskan referensi ke objek sebagai parameter daripada memanggil metode pada objek?
Untuk memperjelas apa yang saya maksud, pertimbangkan kelas berikut:
public class SomeClass {
private double someValue;
public SomeClass() {
// Some constructor in which someValue is set
}
public void incrementValue() {
someValue++;
}
}
Dibandingkan dengan penerapan alternatif ini dengan metode statis:
public class SomeClass {
private double someValue;
public SomeClass() {
// Some constructor in which someValue is set
}
public static void incrementValue(SomeClass obj) {
obj.someValue++;
}
}
Pertanyaan saya tidak terbatas pada kelas ini saja; setiap titik di mana Anda akan melewati objek alih-alih menyebutnya dengan metode adalah hal yang saya minati. Apakah ini pernah menguntungkan? Jika demikian, mengapa?