A class is a blueprint. Calling new builds an object on the heap, and a handle is the only way to reach it.
Idea | What it is | Where it lives |
|---|---|---|
Class | A type definition: properties plus methods | Compiled code, no memory |
Object | One runtime instance built by new | Simulator heap |
Handle | A reference variable pointing at an object, or null | Any variable of a class type |
Lesson | Content | Path |
|---|---|---|
Transaction objects with new, and the construction flow. | Required | |
Aliasing checks, null guards, and reachability. | Required | |
Argument forwarding through an inheritance chain. | Required | |
Independent snapshots for scoreboards. | Required | |
Name resolution and forward declarations. | Recommended |
Path labels. Required means core first pass for this topic, Recommended means most learners should read it, and Optional means reference, specialist or revision material you can return to later.
Nothing immediate happens to A. The handle now points at B. A becomes unreachable, so the simulator may reclaim it. Reclamation timing is implementation-dependent.