About this textbook
Here you will have access to Caelum's textbooks. We hope you enjoy this content and that it can be of great value for self-taughts and students. Comments, ratings and suggestions are welcome. All content from this site can be publicly distributed, since it shouldn't be modified and it's credits should be maintained. It shouldn't be used for teaching other course, although can be used as reference and support material. In case you are interested in use it commercially, contact us.Java Object Oriented Programming
Chapter 1 - How to learn Java
Chapter 2 - What is Java
2.1 - Java
2.2 - Virtual Machine
2.3 - Slow Java? Hotspot and JIT
2.4 - Java versions... and the Java2 confusion
2.5 - JVM? JRE? JDK?
2.6 - Java uses and objectives
2.7 - Specification versus implementation
2.8 - How this book is organized
2.9 - Our first Java program
2.10 - Executing your first program
2.11 - Exercises
2.12 - What may go wrong?
2.13 - Exercises
Chapter 3 - Primitive variables and control flow
3.1 - Declaring and using variables
3.2 - Primitive types and values
3.3 - Exercises
3.4 - Casting and promotion
3.5 - If-Else
3.6 - While
3.7 - For
3.8 - Controlling loops
3.9 - Variable scope
3.10 - A block inside another block
3.11 - Exercises
Chapter 4 - Introduction to Object Orientation
4.1 - Motivation: problems with the procedural paradigm
4.2 - Creating a type
4.3 - A Java class
4.4 - Creating and using an object
4.5 - Methods
4.6 - Methods with return
4.7 - Objects are accessed by references
4.8 - The transfer() method
4.9 - More about attributes
4.10 - A little more: A Car Factory
4.11 - Exercises
Chapter 5 - A little bit about arrays
5.1 - The problem
5.2 - Reference arrays
5.3 - Iterating over an array
5.4 - Iterating over arrays using Java 5.0
5.5 - A little more...
Chapter 6 - Access modifiers and class attributes
6.1 - Controlling access
6.2 - Encapsulation
6.3 - Getters and Setters
6.4 - Constructors
6.5 - The need for a constructor
6.6 - Class variables
6.7 - exercises
Chapter 7 - Object Orientation: Inheritance, Overriding and Polymorphism
7.1 - Repetitive code?
7.2 - Method Rewriting
7.3 - Calling an overridden method
7.4 - Polymorphism
7.5 - Exercises
Chapter 8 - Eclipse IDE
8.1 - Eclipse
8.2 - Getting to know Eclipse
8.3 - Views and Perspective
8.4 - Creating a new project
8.5 - Our Account class
8.6 - Creating the main method
8.7 - Running your application
8.8 - Tricks
8.9 - Exercises
Chapter 9 - Object Orientation – Abstract Classes
9.1 - Repeating code over and over again?
9.2 - Abstract classes
9.3 - Abstract methods
9.4 - Another example
9.5 - Exercises
Chapter 10 - Object Orientation – Interfaces
10.1 - The problem
10.2 - Interfaces
10.3 - Main issues while learning the concept of interfaces
10.4 - A practical example: database connection
10.5 - Exercises
Chapter 11 - Exceptions – Handling errors
11.1 - Why do we need error-handling?
11.2 - A Practical Exercise to get to know the concepts
11.3 - Common Runtime Exceptions
11.4 - Another kind of exception: Checked Exceptions
11.5 - Multiple errors?
11.6 - Throwing Exceptions
11.7 - Creating your own exception types
11.8 - The "last word": finally
11.9 - Exercises
Chapter 12 - Packages - Organizing your classes and libraries
12.1 - Organizing your code
12.2 - Directories
12.3 - Import
12.4 - Attribute, constructor and method access
12.5 - Working with packages in Eclipse
12.6 - Exercises
Chapter 13 - Tools: jar e javadoc
13.1 - Files, libraries and versions
13.2 - Generating a Jar with Eclipse
13.3 - Javadoc
13.4 - Generating Javadoc
13.5 - Classpath
13.6 - Exercícios
Chapter 14 - The java.lang package
14.1 - The java.lang package
14.2 - The classes System and Runtime
14.3 - java.lang.Object
14.4 - Reference Casting
14.5 - Integer and other wrapper classes
14.6 - Autoboxing in Java 5.0
14.7 - Methods in java.lang.Object: equals and toString
14.8 - java.lang.String
14.9 - java.lang.Math
14.10 - Exercises
Chapter 15 - The java.io package
15.1 - Getting to know an API
15.2 - Object Orientation
15.3 - InputStream: reading bytes
15.4 - InputStreamReader: reading chars
15.5 - BufferedReader: reading Strings
15.6 - Reading Strings from the keyboard
15.7 - Same design, different direction: output
15.8 - Easier still: Scanner e PrintStream
15.9 - Exercises
Chapter 16 - Collections framework
16.1 - Arrays are hard work – so use an abstract data type!
16.2 - Lists: java.util.List
16.3 - Lists in Java 5.0 with Generics
16.4 - Ordering: Collections.sort
16.5 - Exercises
16.6 - Sets: java.util.Set
16.7 - Key interfaces: java.util.Collection
16.8 - Iterating over collections java.util.Iterator
16.9 - Traversing collections in Java 5.0: enhanced for
16.10 - Maps - java.util.Map
16.11 - Maps in Java 5.0
16.12 - Exercises
Chapter 17 - Threads
17.1 - Threads of Execution
17.2 - Creating a subclass of Thread
17.3 - Garbage Collection
17.4 - Exercises
17.5 - Next steps: Sharing objects between Threads
17.6 - Further considerations: Vector and Hashtable
Index
Version: 9.3.9