Skip to content

Java Developer & Webmaster

Gordan Grgic

Advanced Java Programming (AJP)

Advanced Java Programming (AJP)

After completing Core Java, this subject introduced me to more advanced features of the Java language and the JDK. It deepened my understanding of object-oriented programming and modern Java practices.

Topics I studied

My experience

The most challenging part was understanding multithreading and dealing with concurrency issues. What I found most useful were lambda expressions and streams, which make the code shorter, cleaner, and easier to maintain.

Code Example (Streams + Lambda)

import java.util.Arrays;
import java.util.List;

public class Main {
    public static void main(String[] args) {
        List<String> names = Arrays.asList("Gordan", "Mila", "Marija", "Ivan");

        // Print names starting with 'M'
        names.stream()
             .filter(name -> name.startsWith("M"))
             .forEach(System.out::println);
    }
}