You'll learn about this in Chapter 6. A serialization interface and object input and output streams were added so not just raw data but also stateful objects could be saved and restored. You'll encounter this in Chapter 7. And through all of this ran the thread of JavaBeans. Events are used to communicate between beans.
Serialization is used to customize beans.
Reflection is used to load unknown beans into runtimes and builder tools and allow them to do their work. There were other parts too. The java.sql package and JDBC were added to simplify interconnection of Java programs and SQL databases. The security model was enhanced to allow signed applets and trusted code greater access to system resources. However, there's little question that in the long run the single biggest improvement to Java in 1.1 and beyond is the JavaBeans component software architecture.