> > "Aliasing and its solution is a complex issue and, although you must
> > wait until Chapter 12 for all the answers, you should be aware of it at
> > this point so you can watch for pitfalls."
> In context, I think this is a reasonable statement. Aliasing has
> many meanings in computing. I think he means "assigning two pointers
> to designate the same heap block." This _is_ difficult to get right.
Well, to put it "in context," I offer the following admittedly UNFAIR
summary of Eckel's three pages:
In Java, you must remember that the normal assignment syntax does not
have the most intuitive meaning because of aliasing of objects. And you
have to remember that everything's an object--except when it's a
primitive. That's all you have to know for now. Just don't assign
anything except primitives until I tell you how in chapter 12. If you
really think you can't do any useful work without assignment, assign the
fields of the object, as in "obj1.f = obj2.f" But don't get too
attached to that technique, because (don't ask why) I assure you that
mentioning a field of an object is not the OO way to do things.
To put my question another way, "How many languages require three pages to
introduce the concept of assignment?"