Dalam pemrograman berorientasi objek, suatu objek dapat menyembunyikan atau mengungkapkan atributnya, atau statusnya, dan perilakunya, atau metodenya. Objek dapat diberi label dengan pengubah “publik” atau “pribadi” untuk menampilkan atau menyembunyikan informasi, masing-masing. Baik “pribadi” dan “publik” adalah variabel, tetapi mereka adalah jenis variabel yang berbeda. Pengubah “publik” adalah variabel dinamis, yang berarti bahwa eksekusi informasi pada saat run-time dari suatu program adalah lancar.
Semua data objek dan metode objek, secara default, dinamis dalam pemrograman berorientasi objek. Setiap objek dalam suatu program memiliki variabel dinamisnya sendiri dan metode dinamisnya sendiri. Artinya, setiap eksekusi objek lancar saat run-time dan dapat berubah saat menjalankan kembali program. Ini berjalan berbeda dengan variabel statis, di mana variabel statis dialokasikan ke memori tetap selama masa pakai program. Artinya, begitu variabel dialokasikan ke ruang memori, variabel itu tidak dihancurkan di akhir suatu fungsi.
Variabel yang dinamis dapat digunakan untuk mengumpulkan nilai bidang untuk digunakan nanti. Program dapat menggunakan nilai batas ambang dan membandingkannya dengan nilai bidang tertentu yang diproses. Kumpulan operasi yang berbeda dilakukan untuk nilai bidang, tergantung pada apakah nilainya lebih kecil atau lebih besar dari nilai batas ambangnya. Variabel dinamis dapat dibedakan dari variabel lain karena nilai ambangnya dapat berubah selama masa program.
Variabel statis dan variabel dinamis dibedakan dalam nilai variabel yang tetap atau berubah-ubah. Variabel yang bersifat statis mirip dengan konstanta dalam matematika, seperti nilai (pi) yang tidak berubah. Variabel dinamis, sebaliknya, tidak memiliki nilai konstan dan oleh karena itu, dapat mengubah nilai ambang batas.
Mesin penjual otomatis adalah contoh mesin yang menjalankan program dengan variabel dinamis. Jumlah produk di mesin penjual otomatis terus berubah saat dikeluarkan dari mesin. Jumlah ini adalah variabel dinamis, dan karena nilainya terus berubah, sebuah program melacak nilainya untuk menentukan apakah mesin perlu diisi ulang.
Saat memprogram variabel apa pun, termasuk variabel dinamis, sebaiknya beri nama variabel berdasarkan metode objek, atau apa yang dilakukannya dalam program. Misalnya, jika ada variabel tertentu yang memperhitungkan ukuran sepatu, variabel tersebut dapat diberi nama “ukuran_sepatu”. Ini juga merupakan praktik normal untuk memulai variabel dinamis dengan huruf kecil dan menempatkan garis bawah di antara banyak kata.