fin functional expressions of SAM interfaces related to the given one

This commit is contained in:
peter
2016-07-23 23:05:56 +02:00
parent d16e471bdb
commit 22b9dc61a6
3 changed files with 133 additions and 75 deletions
@@ -0,0 +1,26 @@
interface DumbAware {}
interface MyRunnable {
String foo();
}
interface DumbAwareRunnable extends MyRunnable, DumbAware {}
interface DumbAwareRunnable2 extends DumbAwareRunnable {}
interface DumbAwareFunction extends DumbAware {
Object f(Object o);
}
class Foo {
<T extends DumbAware> void foo(T r, Class<T> c) {}
void bar(DumbAwareRunnable r) {}
void bar2(DumbAwareRunnable2 r) {}
{
DumbAwareRunnable var1 = () -> "var1";
DumbAwareRunnable2 var2 = () -> "var2";
DumbAwareFunction var3 = a -> "var3";
foo(() -> "c1", DumbAwareRunnable2.class);
bar(() -> "c2");
bar2(() -> "c3");
}
}