Skip to main content

Advanced Java Programming (5 cr)

Code: TT00FK31-3007

General information


Enrollment

02.12.2022 - 31.12.2022

Timing

01.08.2023 - 31.07.2024

Number of ECTS credits allocated

5 op

Virtual portion

5 op

Mode of delivery

Distance learning

Unit

School of ICT

Campus

Karaportti 2

Teaching languages

  • Finnish

Degree programmes

  • Information and Communication Technology

Teachers

  • Janne Salonen
  • Janne Piippo

Teacher in charge

Janne Salonen

Groups

  • Viope_nonstop_13
    Viope_nonstop_13

Objective

Understanding the problem field of object-oriented programming.
The ability to define and use self-programmed classes in the student's own programs utilizing relationships between classes and objects (inheritance, association, composition). Familiarity with Java API from the scope of user interface programming (Swing). The ability to use data streams (files). Familiarity with the basic data structures provided by Java API and the skills to use them.

Content

Object-oriented programming. Exceptions and data streams. Data structures. Graphical user interface.

Evaluation scale

0-5

Assessment criteria, satisfactory (1)

Object-oriented programming:
- The student can define classes with instance variables, getters and setters, as well as other methods. The student can create objects out of them as well as change the status of the objects.
- The student can define an association relationship between classes.
- The student can define a subclass.
- The student can define an interface and its implementing class.

Exceptions and data streams:
- The student can implement try/catch structure.
- The student understands the concept of data structure.

Data structures:
The student can use Array List structure.

Graphical user interfaces:
The student can implement a program in compliance with MVC model that has a graphical user interface.
The student can insert legends, text fields and buttons into a user interface.
The student can implement a button listener.

Assessment criteria, good (3)

Object-oriented programming:
- The student can design and implement a class structure comprising of a few classes that implements association and inheritance relationships.
- The student recognizes aggregation and composition. He/she is able to implement them with instance variables.
- The student can use static methods and variables in object-oriented programming.
- The student can define abstract classes and methods as well as subclasses required by them.

Exceptions and data streams:
- The student can implement exception handlers that behave differently for different exception classes.
- The student can define the data streams required for file operations as well as implement the required exception handlers. The student can utilize data streams to read and write objects.

Data structures:
- The student knows List interface. He/she is able to use ArrayList and Vector data structures when applicable to the context.
- The student can use wrapper classes.

Graphical user interfaces:
- The student can use containers and layout managers in implementing a graphical user interface.
- The student can use list and combo boxed as well as radio buttons and check boxes.
- The student can utilize Java application programming interface in implementing user interfaces.

Assessment criteria, excellent (5)

Object-oriented programming:
- The student can use modifiers with classes, methods and variables.
- The student can uses anonymous and names inner classes.

Exceptions and data streams:
- The student can use character-based data streams and parse a read input line.

Data structures:
- The student can use data structures included in Java application programming interface by utilizing sources.

Graphical user interface:
- The student is able to implement a menu.
- The student can write listeners to mouse and keyboard events as well as menu items.