Object Oriented Programming

Base Knowledge

Basic programming knowledge.

Teaching Methodologies

According to the objectives of the course, its target public, and achievement goals, certain methodologies and strategies must be used in order to allow the right comprehension of the taught content.

 As such, it is prioritized the use of several techniques and methodologies together to maximize the apprehension of contents, thus we have:

 1. Expository method: oral exposition of theoretical contents using multimedia presentations, use of programs and resources specific to the development of programs using Java;

 2. Interrogative method: through  questions directed to a student or to the group during the classes, allowing immediate feedback on the contents covered;

 3. Active method: by using several techniques, such as conducting discussions/debates on the themes developed,  case studies regarding important facts in the area of ​​the matter, problem-solving and development of individual works;

 4. Demonstrative method: useful to demonstrate the installation and operation of programs used in the development of programs in Java.

Learning Results

Define the concept of object-oriented programming.

Identify the concepts of encapsulation, abstraction, inheritance and polymorphism.

Create object-oriented programs.

Create objects and call their methods.

Program

1. Object-Oriented Programming Concepts

               1.1. Methods

               1.2. Encapsulation

               1.3. Classes

               1.4. Objects

               1.5. Inheritance

                              1.5.1. Class hierarchy; 1.5.2. Inheritance mechanisms; 1.5.3. Super e Subclasses

               1.6. Polymorphism

               1.7. Abstract classes

 

2. Object-oriented software construction rules

3. A linguagem orientada a objectos Java

               3.1. Language sintaxe

               3.2. Development environment

               3.3. Constants and variables

               3.4. Operators

               3.5. Data types

               3.6. Data input and output

               3.7. Basic instructions

               3.8. Types conversion

               3.9. Instructions and control structures

                              3.9.1. If; 3.9.2. Switch; 3.9.3. For; 3.9.4. While; 3.9.5. Repeat; 3.9.6. Break; 3.9.7. Continue;

               3.10. Classes and Objects

               3.11. Class definition

                              3.11.1. Class creation; 3.11.2. Class methods; 3.11.3. Class variables;

               3.12. Class Inheritance

               3.13. Encapsulation

               3.14. Polymorphism

               3.15. Abstract classes

               3.16. Interfaces

               3.17. Collections

               3.18. Exceptions

               3.19. Stream.

Curricular Unit Teachers

Internship(s)

NAO

Bibliography

Evans, B.J, Flanagan, D. (2018). Java in a nutshell (7th ed.). O’Reilly Media.

Mendes, A. J., Marcelino, M. J. (2012). Fundamentos de programação em Java (4th ed.). FCA.

Eckel, B (2006). Thinking in java (4th ed.). Prentice Hall.