java 内部类 匿名内部类 匿名类结合泛型 使用 详细教程 讲解
2018-01-12 20:04
661 查看
public class Inner{ public static void main(String[] args){ Xiao x = new Xiao(); x.study(); x.start().play(); //参数是匿名类的实例对象 x.sport(new Car(){ public void run(){ System.out.println("能跑"); } }); //上面的方法分步详解: class Xcar implements Car{ public void run(){ System.out.println("匿名类方法run"); } } Xcar xc = new Xcar(); x.sport(xc); //x.eat() 返回的是匿名类的实例对象 所以有eating方法 String str = x.eat().eating(); System.out.println(str); //实现泛型接口 class Xdog implements Dog<String>{ public String begin(String s){ System.out.println("泛型接口"+s); return s; } } Xdog xd = new Xdog();//实例化 x.doing(xd); //匿名泛型类 Chicken<String> c = new Chicken<String>(){ public String fly(String s){ System.out.println("flying"+s); return s; } }; System.out.println(c); x.going(c); } } class Person{ public void study(){ System.out.println("我会学习"); } } class Computer{ public void play(){ System.out.println("我会玩电脑"); } } interface Car{ void run(); } abstract class Cat{ abstract String eating(); } interface Dog<T>{ T begin(String s); } interface Chicken<T>{ T fly(String s); } class Xiao extends Person{// 外部类继承Person 肯定会有Person 的方法 public class Lei extends Computer{ //内部类继承 Computer Lei 的实例对象 肯定有Computer的方法 } public Lei start(){ return new Lei();//返回对象实例 } public void sport(Car c){//参数是接口的实例 c.run(); } public Cat eat(){ return new Cat(){//匿名内部类 return 的就是匿名内部类的实例 所以实例的地址 可以调用实例的eating方法 private String str = "小鱼"; public String eating(){ System.out.println("猫吃鱼"); return str; }; }; } public void doing(Dog<String> d){ System.out.println(d.begin("thanking")); } public <H> void going(Chicken<H> c){// void 前面需要加上<H> <>内的字母不限 方法泛型 局部声明的 System.out.println(c.fly("小鸡快跑。。。")); } }
运行结果如下:
相关文章推荐
- java 泛型深入之Set有用工具 各种集合泛型深入使用演示样例,匿名内部类、内部类应用于泛型探讨
- java 泛型深入之Set实用工具 各种集合泛型深入使用示例,匿名内部类、内部类应用于泛型探讨
- java 泛型深入之Set实用工具 各种集合泛型深入使用示例,匿名内部类、内部类应用于泛型探讨
- 详细讲解Java中log4j的使用方法
- Java异常处理机制的详细讲解和使用技巧
- JAVA 匿名类和内部类 、匿名内部类
- JAVA AJAX教程第三章—AJAX详细讲解
- Java中匿名内部类的使用方法
- 【转】java中的内部类与匿名类的基本使用方法
- 详细讲解Java中log4j的使用方法
- Java异常处理机制的详细讲解和使用技巧
- [ggk itcast周六java]java多线程二种方法,及其安全。内部类及匿名类的使用方法。
- Xcode使用教程详细讲解 1
- 详细讲解Java中log4j的使用方法
- Xcode使用教程详细讲解
- java中的匿名类和匿名内部类
- 详细讲解Java中log4j的使用方法
- 如何使用Java中集合类的详细讲解
- 详细讲解Java中log4j的使用方法
- Java的单向链表和内部类的结合使用