In Java...
Variables contain the values of primitive data types Value Types
In Java, primitive data types such as int, float, double, char, and boolean are called value types A variable of one of these types is a container for one value of its appropriate type counterpricefoundIt 75.99false Value types of variables contain their values
Value Types Because a variable of a value type is a container for ONE value of the corresponding type, giving it a second value replaces the first value entirely with the second dependents 2 2 3
Objects of Classes Reference Types in Java
Reference Types A variable declared as a reference to an object of some class (either a built-in class or a user-defined class) is a reference type A reference variable DOES NOT contain the the object to which it refers – instead, it refers to that object (i.e., it points to that object) A reference variable is null (refers to nothing) until it is given an object for it to reference Reference Actual Object
Reference Types personA personB null null personA personB Rachel Walling new creates an actual object of type Person initialized to Rachel Walling Two different references now refer to a single actual object
Reference types Just as value types may only have one value at a time, reference types may only refer to one actual instance at a time bob Bob Smith After line 5
Reference types As value types may only have one value at a time, reference types may only refer to one actual instance at a time bob Bob Smith Bob Jones Since nothing refers to this object now, it is destroyed (“garbage collected”) by Java After line 7