zoukankan      html  css  js  c++  java
  • Java反射

    package com.imooc.reflect;

    import java.lang.reflect.Method;

    public class MethodDemo1 {
        public static void main(String[] args) {
            A a1 = new A();
            //先得到类类型  在得到方法  
            //1对象.  2类名.class     3 classforname
               Class c = a1.getClass();
               
             try {
                Method m = c.getMethod("print",new Class[]{String.class,String.class});
                Object o = m.invoke(a1,new Object[]{"hello","WORD"});
                
                
                
            } catch (Exception e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            
            }
            
        }
        
        
        
    }

    class A{
        public void print(){
            
            System.out.println("=========");
        }
        
        public void print(int a,int b){
            System.out.println(a+b);
        }
        
        public void print(String a, String b){
            System.out.println(a.toUpperCase()+" "+b.toLowerCase());
            
        }
    }

    List<String> 

    反射可以绕过编译      这个时候加一个String 是为了我们添加的时候如果类型不对  编译无法通过会报错   实际在运行的时候是去掉类型的

  • 相关阅读:
    常用模块
    python里面的奇技淫巧
    day_06、面向对象(二)
    day_06、面向对象
    day_06、递归、二分查找
    day_05、内置函数、匿名函数
    day_05、迭代器、生成器
    day_04、函数
    php调用webservice接口
    php在命令行输出进度条
  • 原文地址:https://www.cnblogs.com/amurzet/p/6551057.html
Copyright © 2011-2022 走看看