Course Code



1st Semester

ECTS Credits


Type of Course


The Java Programming Language


The aim of the course is to introduce students to the object-oriented way of thinking about modeling and problem solving and object-oriented programming (object oriented programming) and to familiarize them with the basic concepts of the object-oriented Java programming language. More specifically, students a) are taught the basic concepts and techniques that make up the model of object-oriented programming, b) acquire skills in designing and coding algorithms in Java, and c) acquire the ability to develop, debug, and control programs in a programming environment. Through the design of well-designed laboratory exercises, students are expected to gain hands-on experience in developing programs in Java.

Course Contents

Introduction to object-oriented programming

Introduction to object-oriented thinking as an approach to modeling problems and solving them through programming languages. Fundamental concepts of object-oriented programming. Real-world entity modeling. Objects and Classes.

Introduction to the Java programming language

Syntax and language features, variables, data types and representations. Controls. Paintings.

Classes and Objects

Creating classes and making objects. Manufacturers and Class Methods. Call methods on objects.

Interaction between objects

Sending messages – calling methods, passing parameters.

Basic concepts of object-oriented programming

Heredity and Multiformity. Use of subtractions and interfaces. Handling exceptions. Event handling.

File management

Create, read and write to text files and binaries.

Database management

Access SQL Databases via JDBC (Java Database Connectivity). Data persistence in Java using tools like Hibernate. Access to noSQL Databases.

Server-side programming

Web services, java servlets.

Application development

Graphical User Interface (GUI). Development of fully functional programs.

Recommended Readings

  • Paul J. Deitel, Harvey Deitel (2018): Java How to Program, 11th Edition, Pearson, ISBN: 9780134743356.
  • Herbert Schildt (2018): Java: The Complete Reference, Eleventh Edition, 11th Edition, McGraw-Hill, ISBN: 9781260440249.
  • Christian Bauer, Gavin King, Gary Gregory (2015): Java Persistence with Hibernate, 2nd Edition, Manning Publications ISBN: 9781617290459.