OnJava8-Examples/functional/MultiUnbound.java

37 lines
959 B
Java
Raw Normal View History

2015-12-02 09:20:27 -08:00
// functional/MultiUnbound.java
2020-10-07 13:35:40 -06:00
// (c)2020 MindView LLC: see Copyright.txt
2015-12-02 09:20:27 -08:00
// We make no guarantees that this code is fit for any purpose.
2016-09-23 13:23:35 -06:00
// Visit http://OnJava8.com for more book information.
2015-12-02 09:20:27 -08:00
// Unbound methods with multiple arguments
class This {
void two(int i, double d) {}
void three(int i, double d, String s) {}
void four(int i, double d, String s, char c) {}
}
interface TwoArgs {
void call2(This athis, int i, double d);
2015-12-02 09:20:27 -08:00
}
interface ThreeArgs {
void call3(This athis, int i, double d, String s);
2015-12-02 09:20:27 -08:00
}
interface FourArgs {
void call4(
This athis, int i, double d, String s, char c);
2015-12-02 09:20:27 -08:00
}
public class MultiUnbound {
public static void main(String[] args) {
TwoArgs twoargs = This::two;
ThreeArgs threeargs = This::three;
FourArgs fourargs = This::four;
This athis = new This();
twoargs.call2(athis, 11, 3.14);
threeargs.call3(athis, 11, 3.14, "Three");
fourargs.call4(athis, 11, 3.14, "Four", 'Z');
2015-12-02 09:20:27 -08:00
}
}