460-2058 – Java Programming I (JAVA I)

Gurantor departmentDepartment of Computer Science
Subject guarantorIng. Jan Kožusznik, Ph.D.
Study levelundergraduate or graduate
Subject version
Version codeYear of introductionYear of cancellationCredits
460-2058/01 2019/2020 4
460-2058/02 2019/2020 4

Subject aims expressed by acquired skills and competences

In Java, student is familiar with: -difference between inheritance as class extension and subtyping as interfaces; -type system and difference between primitive types and object types; -casting among different primitive types and object types; -auto boxing and unboxing between primitive and wrapper types; -accessing filesystem; -interprocess communication through Internet connection. In Java, student can: -construct runnable program; -design and implement a class; -use subclassing to design class hierarchies; -separate code to namespaces and access elements for different namespaces; -use dynamic dispatch; -use interfaces as encapsulation mechanism; -handle and propagate errors by exception mechanism; -use Collection framework for data abstraction and construction for-each, -process strings with regular expressions; -read and write data from text files and binary files; -use lambda expression; -run parallel code in separate thread In Java, student is able assess alternative implementation of collections with respect of performance

Teaching methods

Lectures
Tutorials
Experimental work in labs
Project work

Summary

Students improve their knowledge of object oriented programming a gain another insight in programming languages problematics from point fo view of modern programming language Java. Course follows courses „Introduction to programming“ and „Object oriented programming“ and students are required to pass these courses successfully before enrollment into the course.

Compulsory literature:

SCHILDT, Herbert, 2017. Java: A Beginner’s Guide, Seventh Edition. 7 edition. New York: McGraw-Hill Education. ISBN 978-1-259-58931-7. Oracle.The Java™ Tutorials. accessed September 21, 2016,http://docs.oracle.com/javase/tutorial/index.html.

Recommended literature:

KOŽUSZNIK, Jan. Programming language 1. Opory k předmětu vzniklé v rámci projektu InterDV. SCHILDT, Herbert, 2017. Java: The Complete Reference, Tenth Edition. 10 edition. New York: McGraw-Hill Education. ISBN 978-1-259-58933-1. Bruce Eckel: Thinking in Java, ISBN: 978-0131872486 Joshua Bloch: Effective Java, ISBN: 978-0321356680

Prerequisities

Subject codeAbbreviationTitleRequirement
460-2052 UPR Introduction to Programming Recommended
460-2055 OOP Object Oriented Programming Recommended

Co-requisities

Subject has no co-requisities.