Coming from his background in Java development, the concept of using delegates and categories, as opposed to subclassing, was a bit foreign to Marcus Zarra. In Java subclassing, nearly everything was quite common. So common in fact, that Sun provided generic subclasses in quite a few cases. Objective-C and Cocoa, however, have a different approach. Marcus walks you through the different approaches used in Objective-C programming. Also: the Java platform includes a number of packages that are concerned with the movement of data into and out of programs. These packages differ in the kinds of abstractions they provide for dealing with I/O (input/output). This chapter covers primarily the stream-based model of the java.io package.
Java the language mightn’t support this sort of thing but I believe the concept is similar to what AspectJ can provide. The AspectJ language is a superset of java whose compiler generates standard bytecode.
For info about aspects see
http://eclipse.org/aspectj/
This sounds the author is talking about MVC (model-view-controller) architecture, which of course you can do in Java. In fact, Eclipse makes extensive use of MVC in the JFace GUI classes. The traditional Java core libraries as well as Swing tend to rely heavily on subclassing but has more to do with design decisions rather than any sort of restriction in the Java language.
Kind of…
MVC is a methodology that any developer can employ within an OO paradigm, sure.
Objective-C, however, being a really dynamic language, provides the developer with a great deal of flexibility in this area.