有关Java8Lambda表达式实例化接口问题

1.Lambda为什么可以实例化一个接口?

2.实例化一个接口,除了常规方式(new一个实现接口的对象,单实力模式、工厂模式),还有什么方式?有没有类似使用内部类的实现方式(类似下面错误代码的
interface Converter{
Integer converter(String from);
}

public class testLambda {

public static void main(String[] args) {

// Converter converter1 =from -> Integer.valueOf(from);
// Integer var =converter1.converter("99");
// System.out.println(var);
//错误代码如下:
Converter converter2 = new InnCl extends Converter{
String a ="99";
converter(a) {
return Integer.valueOf(a);
}
}
}

}

interface Converter{
Integer cntStringtoInt(String from);
}

public class testLambda {

public static void main(String[] args) {

// Converter converter1 =Integer::valueOf;//from -> Integer.valueOf(from);
// Integer var =converter1.converter("99");
// System.out.println(var);
// MyTest mt =String::substring;
// System.out.println(mt.test("Java I love you", 2, 9));

    Converter converter2 = new Converter() {

        public Integer cntStringtoInt(String from){
           return   Integer.valueOf(from)  ;  
         }
    };

    String a ="99";
    System.out.println(converter2.cntStringtoInt(a));

}

}

interface MyTest{
String test(String a,int b ,int c);
}