Menurut pendapat saya, variabel instan hanya diperlukan ketika data akan digunakan di seluruh panggilan.
Berikut contohnya:
myCircle = myDrawing.drawCircle(center, radius);
Sekarang mari pencitraan kelas myDrawing menggunakan 15 fungsi pembantu untuk membuat objek myCircle dan masing-masing fungsi tersebut akan membutuhkan pusat dan radius. Mereka tetap tidak boleh disetel sebagai variabel instan dari kelas myDrawing. Karena mereka tidak akan pernah dibutuhkan lagi.
Di sisi lain, kelas myCircle perlu menyimpan pusat dan radius sebagai variabel instan.
myCircle.move(newCenter);
myCircle.resize(newRadius);
Agar objek myCircle mengetahui radius dan pusatnya saat panggilan baru ini dibuat, panggilan baru ini perlu disimpan sebagai variabel instan, tidak hanya diteruskan ke fungsi yang membutuhkannya.
Jadi pada dasarnya, variabel instan adalah cara untuk menyimpan "status" suatu objek. Jika variabel tidak diperlukan untuk mengetahui status suatu objek, maka variabel tersebut tidak boleh menjadi variabel instan.
Dan untuk membuat semuanya menjadi publik. Mungkin membuat hidup Anda lebih mudah saat ini. Tapi itu akan kembali menghantui Anda. Tolong jangan.