Java wildcard

PHOTO EMBED

Tue Jun 18 2024 22:53:59 GMT+0000 (Coordinated Universal Time)

Saved by @iyan #java

import classes.*;

public class Main {
    public static void main(String[] args) {
        Mygeneric mygen = new Mygeneric<String>("Dodi");
        generate(mygen);

        Mygeneric<Object> gen = new Mygeneric<Object>("Jamal");
        process(gen);
        
    }

    public static void doodle(Mygeneric<String> mygen) {
        System.out.println(mygen.getData());
    }

    /*
     * Saya akan menerima parameter apapun hasil instance dari 
     * kelas Mygeneric yang tipe genericnya adalah turunan dari Object
     */
    public static void generate(Mygeneric<? extends Object> data) {
        System.out.println(data.getData());

    }

    /*
     * Saya akan menerima parameter apapun hasil instance dari
     * kelas Mygeneric yang bertipe data String ATAU super class dari
     * String
     */
    public static void process(Mygeneric<? super String> data) {
        String value = (String) data.getData();
        System.out.println(value);
        data.setData("Umar");
        System.out.println(value);
    }
}
content_copyCOPY