JAVA动态加载类及反射实现

Java类加载

在Java当中,加载类分为动态加载和静态加载,其中,在编译时刻加载类叫做静态加载类,在运行时刻加载类叫做动态加载类。

Java反射

Java反射机制主要提供了以下功能:在运行时判断任意一个对象所属的类;在运行时构造任意一个类的对象;在运行时判断任意一个类所具有的成员变量和方法;

定义操作系统标准
//操作系统接口
public interface OSAble {
    void work();
}
Windows系统实现
//windows系统实现操作系统接口
public class Windows implements OSAble {
    @Override
    public void work() {
        System.out.println("WindowsXP working");
    }
}
Linux系统实现

//Linux系统实现操作系统接口
public class Linux implements OSAble {
    @Override
    public void work() {
        System.out.println("linux working");
    }
}
使用反射动态加载操作系统

//使用反射动态加载操作系统
public class OS {
    public static void work(String name) {

        try {
            Class cla = Class.forName(name);
            OSAble able = (OSAble) cla.newInstance();
            able.work();
        } catch (InstantiationException e) {
            e.printStackTrace();
        } catch (IllegalAccessException e) {
            e.printStackTrace();
        }catch (ClassNotFoundException e){
            e.printStackTrace();
        }
    }
}

使用系统开始工作

public class OSTest {

    public static String WINDOWS = "com.yanyuan.reflect.Windows";
    public static String LINUX = "com.yanyuan.reflect.Linux";

    public static void main(String[] args) {
        OS.work(LINUX);
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值