95 lines
2.3 KiB
Java
95 lines
2.3 KiB
Java
import java.util.function.Supplier;
|
|
|
|
@CustomAnnotation(type = CustomAnnotationType.ONE, name = "Alice")
|
|
public class Main implements Runnable, Supplier<Integer>, Interface {
|
|
private static final String name = "John";
|
|
private static final int number = 42;
|
|
private static final double funnyNumber = 6.9;
|
|
|
|
public static void main(@CustomParameterAnnotation String[] args) {
|
|
final var main = new Main();
|
|
main.sayHello();
|
|
|
|
try {
|
|
main.throwSomething();
|
|
} catch (Throwable e) {
|
|
System.err.println("Caught " + e.getMessage());
|
|
} finally {
|
|
System.err.println("Finally block");
|
|
}
|
|
|
|
var a = 8;
|
|
a <<= 3;
|
|
final var b = a >> 1;
|
|
switch (b) {
|
|
case 1:
|
|
break;
|
|
case 32:
|
|
System.out.println("Good");
|
|
break;
|
|
default:
|
|
System.out.println("Number " + a);
|
|
break;
|
|
}
|
|
|
|
final var o = getObject();
|
|
switch (o) {
|
|
case Integer i:
|
|
switch (i) {
|
|
case 1:
|
|
System.out.println("One");
|
|
break;
|
|
case 2:
|
|
System.out.println("Two");
|
|
break;
|
|
case 3:
|
|
System.out.println("Three");
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
break;
|
|
default:
|
|
System.out.println("Something else");
|
|
break;
|
|
}
|
|
|
|
inc(5);
|
|
}
|
|
|
|
private static Object getObject() {
|
|
return 3;
|
|
}
|
|
|
|
private static void inc(int i) {
|
|
i += 1000;
|
|
}
|
|
|
|
@Override
|
|
public void run() {
|
|
Main.main(new String[] { "Hello" });
|
|
}
|
|
|
|
@Override
|
|
public Integer get() {
|
|
return number;
|
|
}
|
|
|
|
@Override
|
|
public String getName() {
|
|
return name;
|
|
}
|
|
|
|
public void throwSomething() throws Throwable {
|
|
throw new Throwable() {
|
|
@Override
|
|
public String getMessage() {
|
|
return "Hello";
|
|
}
|
|
};
|
|
}
|
|
|
|
public static class Inner {
|
|
private static final String name = "Inner John";
|
|
}
|
|
}
|