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

    反射的使用方法
     

    userSeriver接口

    public interface UserService {

        void add();

        int delete(String id);

        int update(String id, String name, String age);

        int insert(String id, String name, String age);
    }
    UserServiceImpl 实现类

    public class UserServiceImpl implements UserService {

        @Override
        public void add() {
            System.out.println("add个啥,你啥也没传");
        }

        @Override
        public int delete(String id) {
            System.out.println("id:"+id+"被删除了");
            return 0;
        }

        @Override
        public int update(String id, String name, String age) {
            System.out.println("id:"+id+"修改成功[name:"+name+"age:"+age+"]");
            return 1;
        }

        @Override
        public int insert(String id, String name, String age) {
            System.out.println("插入成功[id:"+id+"name:"+name+"age:"+age+"]");
            return 2;
        }

    }
    MainTest测试类

    public class MainTest {

        public static void main(String[] args) {
            try {
                Class<?> clazz1 = Class.forName("com.test.UserServiceImpl");
                
                Method method1 = clazz1.getMethod("update", String.class, String.class, String.class);
                Object invoke1 = method1.invoke(clazz1.newInstance(), "id100","王大拿","51");
                System.out.println(invoke1);
                
                Class<?> clazz2 = UserServiceImpl.class;
                for (Method method : clazz2.getMethods()) {
                    if (method.getName().equals("insert")) {
                        Method thisMethod = clazz2.getMethod(method.getName(), method.getParameterTypes());
                        Object obj = thisMethod.invoke(clazz2.newInstance(), "1", "张大炮", "28");
                        System.out.println(obj);
                    }
                }
                
                UserService user = new UserServiceImpl();
                Class<?> clazz3 = user.getClass();
                Method method3 = clazz3.getMethod("add");
                Object invoke3 = method3.invoke(clazz3.newInstance());
                System.out.println(invoke3);
                
            } catch (Exception e) {
                e.printStackTrace(http://www.my516.com);
            }
        }
    }
     
    ---------------------

  • 相关阅读:
    hibernate案例 测试代码
    android开发 单击按钮 实现页面间的跳转
    hibernate的dao操作不能提交到数据库问题的解决
    hibernate初探
    Could not find action or result 导致 页面出现404错误
    严重: Exception starting filter struts2
    myeclipse 右键 Add Struts... 页面报404 错误
    tomcat错误信息解决方案【严重:StandardServer.await: create[8005]
    struts2 package元素配置(转载)
    TensorFlow和深度学习新手教程(TensorFlow and deep learning without a PhD)
  • 原文地址:https://www.cnblogs.com/hyhy904/p/11331547.html
Copyright © 2011-2022 走看看