Software Objects as Memory

Classic programmed-learning exercises, refreshed for modern Java and presented in the current MrStyner.com portfolio style.

Modern Java noteThis archive has been refreshed for Java 25 LTS. Core language concepts remain useful, while outdated setup instructions and browser-era Java are labeled or replaced. Java 26 is the current feature release; Java 25 is used here as the stable teaching baseline.
go to previous page   go to home page   go to next page        

What are software objects made out of?

Answer:

Computer memory.

Software Objects as Memory

It is only a slight exaggeration to say that memory (both main memory and secondary memory) is what a computer is about. The rest of the electronics—the processor chip, the busses, the power supply, the keyboard, the video card and so on—exist only to work on memory and to show what it contains. So what else could a software object be but a chunk of memory?

(Actually, it is not quite correct to claim that a software object is a "chunk" of memory. A software object is somewhat like a bank account—its existence is spread out and does not correspond one-to-one with any particular piece of material. But for now it is convenient and reasonably accurate to think of a software object as a chunk of memory.)

Objects (real world and software) have identity, state, and behavior.

Software objects have identity. Each is a distinct chunk of memory. (Just like a yellow tennis ball, each software object is a distinct individual even though it may look nearly the same as other objects.)

Software objects have state. Some of the memory that makes up a software object is used for variables which contain values. These values are the state of the object.

Software objects have behavior. Some of the memory that makes up a software object contains programs (called methods) that enable the object to "do things". The object does something when one of its method runs.

QUESTION 5:

(Review) What is the defining characteristic of the type of computer called a von Neumann computer (the type of nearly all current computers)?