General information

Subject type: Basic

Coordinator: Ana Beatriz Pérez Zapata

Trimester: Second term

Credits: 6

Teaching staff: 

Catherine Juan Nadal
Rosa Herrero Antón 

Teaching languages

  • Catalan


Basic skills
  • B2_That students know how to apply their knowledge to their job or vocation in a professional way and have the skills they demonstrate by developing and defending arguments and solving problems within their area of ​​study


Specific skills
  • EFB3_Ability to understand and master the basic concepts of discrete mathematics, logic, algorithms and computational complexity, and their application for solving engineering problems


  • EFB4_Basic knowledge of the use and programming of computers, operating systems, databases and computer programs with application in engineering


Transversal competences
  • T1_That students know a third language, which will be preferably English, with an adequate level of oral and written form, according to the needs of the graduates in each degree


  • T2_That students have the ability to work as members of an interdisciplinary team either as one more member, or performing management tasks in order to contribute to developing projects with pragmatism and a sense of responsibility, making commitments taking into account the available resources



The Object Oriented Programming subject belongs to the subject of Programming and is the second within this area. The topics discussed in the subject are designed to train students to learn concepts related to object-oriented programming. These concepts will be needed in subsequent subjects within this same subject and also in subsequent subjects within the degree.

To take this subject, it is recommended to have passed the subject of the previous term, Fundamentals of Programming.




1.- Introduction to Object Oriented Programming

  • Intuitive object definition
  • Abstraction and encapsulation
  • Objects and classes
  • Attributes and methods
  • Instantiation of objects and invocation of methods

2.- Fundamental techniques of Object Oriented Programming: Inheritance and Polymorphism

  • Class extension: inheritance
  • Polymorphism. Overload and rewrite

3.- Advanced concepts: interfaces and abstract classes

  • Abstract classes and methods
  • Interfaces

4.- Error handling

  • Exceptions
  • Throwing, capturing and handling exceptions

5.- Introduction to the programming of the graphical user interface

  • Programming in response to events
  • Windows and controls

Evaluation system

The final grade is the weighted sum of the grades of the activities:


EXAM 1 23% 

EXAM 2 45%





With the above weights, laboratory (practical) activities have a weight of 32%, theoretical activities have a weight of 68%.

If the grade of EXAM 2 is lower than 4, the final grade of the subject will be that of this activity. The subject will be suspended, with the possibility of recovery.

In order to pass the subject, it is also necessary that the minimum grade of three of the practices is 4. If this premise is not met, the subject will be suspended and in this case there is no possibility of recovering it.

Recovery only makes it possible to recover the grade of the theoretical activities, EXAM 1 and 2, and as long as this new grade is not lower than 4, the same weighting as described above will be applied. Otherwise, the subject will not be considered recovered.

Identification of plagiarism is considered a serious circumstance that may lead to a failing grade in the subject. In case of detection of plagiarism, the coordination of the degree will be informed so that the corresponding disciplinary measures can be taken.



Enric Sesa i Nogueras. OOP: class notes and examples. ESUPT Tecnocampus.

Lina Juan: Extension of class notes. Exercises. ESUPT Tecnocampus.


Bertrand Meyer. Object-Oriented Software Construction. PRENTICE-HALL

Bruce Eckel. Thinking in Java. Prentice-Hall