/java-oop-theory-example-docs

These documents are aimed for students as a learning tool for the Object Oriented Programming class from the 4th Semester of Computer Engineering Program at UABC (Tijuana).

These code sample documents were made as a part of a teaching assistantship of the OOP UABC course for the 4th semester, summarizing the last 3 units. All the theory involved in these documents came from different sources, such as forums, articles, books and many more.

The topics covered in each unit are organized with a theoretical introduction following an example statement to the problem, an example code with its proper execution of the program and conclusions.

UNIT 3: TYPES OF CLASSES IN JAVA

3.1. Types of classes

  • 3.1.1. Applicable modifiers in classes declarations: public, abstract, final, extends, implements.
  • 3.1.2. Abstract classes.
  • 3.1.3. Interfaces.
  • 3.1.4. Enumerations.

3.2. Wrapper classes

  • 3.2.1. Basic classes: Byte, Short, Character, Integer, Long, Float, Double, Boolean.
  • 3.2.2. Primitive data types corresponding to wrapper classes.

3.3. Handling of packages

  • 3.3.1. Creation of a package through the package directive.
  • 3.3.2. Invocation and use of packages, use of import directive.

UNIT 4: INHERITANCE AND COMPOSITION OF CLASSES

4.1 Simple inheritance: derived classes

  • 4.1.1. Inheritance of the members of the parent class.
  • 4.1.2. Addition of the behavior of derived class.
  • 4.1.3. Overriding of attributes and methods.
  • 4.1.4. The reserved word super.

4.2. Multiple inheritance

  • 4.2.1. The concept of interface.
  • 4.2.2. Declaration of the structure of an interface.
  • 4.2.3. Implementation of an interface.
  • 4.2.4. hierarchy of interfaces.

4.3. Composition of classes

  • 4.3.1. Compound classes.
  • 4.3.2. Nested classes.

UNIT 5: INPUT AND OUTPUT OF DATA (I/O)

5.1. Simple data input and output

  • 5.1.1. The package System.out: methods print(), println().
  • 5.1.2. Output format: escape secuencies.

5.2. Simple graphic format input and output

  • 5.2.1. The use of method JOptionPane.showInputDialog().
  • 5.2.2. The use of method JOptionPane.showMessageDialog().

5.3. The StringBuffer class

  • 5.3.1. The use of StringBuffer class.
  • 5.3.2. The methods of StringBuffer class.

5.4. Streams, readers and writers

  • 5.4.1. The use of File class.
  • 5.4.2. Using InputStream.
  • 5.4.3. Using OutputStream.
  • 5.4.4. Using FileInputStream.
  • 5.4.5. Using File OutputStream.