Caelum

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.
del.icio.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