zoukankan      html  css  js  c++  java
  • Java 反射实例 (二)

    第一步: 新建接口,内含eat() 方法

    People.java

    package com.xuzhiwen.spring2;
    
    public interface People {
        public abstract void eat();
    }

    第二步:编写两个实现类

    Man.java  

    package com.xuzhiwen.spring2;
    
    public class Man implements People{
    
        @Override
        public void eat() {
            System.out.println("man est()...");
        }
    }

    Woman.java

    package com.xuzhiwen.spring2;
    
    public class Woman implements People{
    
        @Override
        public void eat() {
            System.out.println("Woman est()...");
        }
    }

    第三步:编写工厂类

    PeopleFactory.java

    package com.xuzhiwen.spring2;
    
    public class PeopleFactory {
        public static People getInstance(String className){
            People p = null;
            try {
                p = (People) Class.forName(className).newInstance();
            } catch (Exception e) {
                e.printStackTrace();
            }
            return p;
        }
    }

    第四步:编写测试类

    package com.xuzhiwen.spring2;
    
    public class TestPeople {
        public static void main(String[] args) {
            People p = PeopleFactory.getInstance("com.xuzhiwen.spring2.Woman");
            p.eat();
        }
    }

    第五步:运行结果如下

  • 相关阅读:
    9"边界匹配
    8劈分
    7替换
    5逻辑匹配
    4分组匹配
    3贪婪匹配与勉强匹配
    python多线程之线程传参
    多线程(类的形式)---线程同步
    多线程基础
    Linux----黑马程序员Linux教学视频简记(转载)
  • 原文地址:https://www.cnblogs.com/beibidewomen/p/7382432.html
Copyright © 2011-2022 走看看