Private06.java revision 2839:592d64800143
1299425Smm/* @test /nodynamiccopyright/ 2299425Smm * @bug 8071453 3299425Smm * @author sadayapalam 4299425Smm * @summary Test that a lone private interface method cannot supply the SAM. 5299425Smm * @compile/fail/ref=Private06.out -XDrawDiagnostics Private06.java 6299425Smm */ 7299425Smm 8299425Smmpublic class Private06 { 9299425Smm @FunctionalInterface 10299425Smm interface NAFI { 11299425Smm private void foo() { 12299425Smm } 13299425Smm } 14299425Smm 15299425Smm @FunctionalInterface 16299425Smm interface FI { 17299425Smm void foo(NAFI nafi); 18299425Smm } 19299425Smm 20299425Smm public static void main(String [] args) { 21299425Smm Private06.NAFI nafi = () -> {}; 22299425Smm Private06.FI fi = Private06.NAFI::foo; // OK. 23299425Smm } 24299425Smm} 25299425Smm 26299425Smmclass Private06_01 { 27299425Smm public static void main(String [] args) { 28299425Smm Private06.FI fi = Private06.NAFI::foo; // NOT OK. 29299425Smm } 30299425Smm} 31299425Smm