• Java反射之getInterfaces()方法


    今天学习Spring3框架,在理解模拟实现Spring Ioc容器的时候遇到了getInterfaces()方法。getInterfaces()方法和Java的反射机制有关。它能够获得这个对象所实现的接口。

    例如:

    Class<?> string01 = person.getClass().getInterfaces()[0];

    //获得person对象所实现的第一个接口

    详细的例子如下:

    Person类:

    1. package com.deciphering.spring;  
    2.   
    3. public class Person implements eagle,whale{  
    4.     private String name = "小明";  
    5.     private int id = 10001;   
    6.     public void Speak(String name){  
    7.         System.out.println("我的名字"+name+" ""编号"+ id);  
    8.     }     
    9.     @Override  
    10.     public void fly() {  
    11.         System.out.println("I can Fly!!!");       
    12.     }  
    13.       
    14.     @Override  
    15.     public void swim() {          
    16.         System.out.println("I can swimming!!!");  
    17.     }  
    18.     public static void main(String args[]){  
    19.         Person person = new Person();  
    20.         person.Speak("小明");  
    21.         person.fly();  
    22.         person.swim();  
    23.         System.out.println("---------------");  
    24.         Class<?> string01 = person.getClass().getInterfaces()[0];  
    25.         Class<Person> string02 = (Class<Person>) person.getClass().getInterfaces()[1];  
    26.         System.out.println(string01);  
    27.         System.out.println(string02);         
    28.     }  
    29. }  

    eagle接口:

    1. package com.deciphering.spring;  
    2.   
    3. public interface eagle {  
    4.     public void fly();  
    5. }  

    whale接口:

    1. package com.deciphering.spring;  
    2.   
    3. public interface whale {  
    4.     public void swim();  
    5. }  

    运行结果:





  • 相关阅读:
    Visual Studio 快捷键
    C#编程使用Managed Wifi API连接无线SSID
    C#两种创建快捷方式的方法
    COJ 1059
    [Unity3D]Unity3D游戏开发之鼠标滚轮实现放大缩小
    cloudstack4.4新增功能前瞻
    hdu 4635 Strongly connected (tarjan)
    freemarker声明变量
    Android 4.4 Kitkat Phone工作流程浅析(六)__InCallActivity显示更新流程
    评教,路上的风景更美
  • 原文地址:https://www.cnblogs.com/jpfss/p/8126567.html
Copyright © 2020-2023  润新知