Course detail
Java Programming Language (in English)
FIT-IJAeAcad. year: 2019/2020
Object orientation. Java - language, objects, classes, programming techniques, libraries, development environments. Design patterns. Debugging and testing tools. Graphic user interface, threads.
Language of instruction
Number of ECTS credits
Mode of study
Guarantor
Department
Offered to foreign students
Learning outcomes of the course unit
Basis of object oriented programming. Knowledge of basic design patterns.
Prerequisites
Co-requisites
Planned learning activities and teaching methods
Assesment methods and criteria linked to learning outcomes
- Work out all homework.
- Work out and present the project.
- Write a test.
- Get at least 20 points from the project and at least 50 points in total.
Course curriculum
Work placements
Aims
Specification of controlled education, way of implementation and compensation for absences
- Work out homeworks and the project.
Recommended optional programme components
Prerequisites and corequisites
- recommended prerequisite
Introduction to Programming Systems
Basic literature
Recommended reading
Joshua Bloch: Effective Java, Prentice Hall; 2 edition (May 28, 2008), ISBN-13: 978-0321356680
The Java Tutorials. https://docs.oracle.com/javase/tutorial/
Classification of course in study plans
Type of course unit
Lecture
Teacher / Lecturer
Syllabus
- Introduction: History, tools, distributions, Java Virtual Machine (JVM). Basis of object orientation: object, class, interface, abstraction, encapsulation, constructors.
- Data types. Class declaration, access modifiers. Structure of application in Java, packages, compilation, run, import classes.
- Inheritance, polymorphism. Object initialization. Arrays. Debugging using assert.
- Inheritance hierarchy, type checking, type casting, object comparison. Interface in Java. Debugging tools.
- Exceptions. Abstract classes, nested (inner) classes, enumeration, static classes and variables.
- Containers: Iterators, collection, set, lits, map. Generics in containers. For-each loop, auto-boxing.
- Threads: Sharing, planning, synchronization.
- Graphic user interface JFC/Swing. Technique of application design.
- Input/Output operations, streams.
- Design patterns. Programming language guide.
- Generics.
- JVM: Class loading, memory management, garbage collector, profiling.
- Java Enterprise Edition: Basic overview.
Project
Teacher / Lecturer
Syllabus
- Homeworks,
- project (a small application with GUI in Java).