We can think of a
variable as a named storage box. We choose a name, perhaps
variableA. These names are kind of like our programmer's window into the memory of the user's Android device.
Variables are values in memory ready to be used or altered when necessary by using the appropriate name.
Computer memory has a highly complex system of addressing, which fortunately we do not need to interact with. Java variables allow us to devise our own convenient names for all the data we need our program to work with. The DVM will handle all the technicalities of interacting with the operating system, and the operating system will, in turn, interact with the physical memory.
So, we can think of our Android device's memory ...