码迷,mamicode.com
首页 > 编程语言 > 详细

Java类的加载の动态

时间:2016-11-08 17:00:28      阅读:128      评论:0      收藏:0      [点我收藏+]

标签:system   stack   for   java   try   style   nts   font   标准   

类的加载方式
  • 静态加载类,是编译时刻加载
  • 动态加载类,是运行时刻加载

new创建对象:是静态加载类,在编译时刻就需要加载所有的可能使用到的类。有一个类有问题(如不存在),都不能通过编译,会报错。

Class.forName(类的全称):通过动态加载类,用到一个类时,才进行加载。 功能性的类建议尽量使用动态加载,并对新添的类实现功能性接口(标准),这样就不用重新编译

import T1.OfficeAble;


public class Office1 {
  public static void main(String[] args) {
      try {
        Class c=  Class.forName("T1.Word");  //传入什么类就 加载什么类              
        //创建对象
        OfficeAble s=(OfficeAble)c.newInstance();
        //调用方法
        s.start();
    } catch (Exception e) {
        e.printStackTrace();
    }}
}
package T1;

public interface OfficeAble {//创建一个接口来规范对象
    
    public void start();
       public void rr();
}
package T1;

public class Word {
    public void start() {
        System.out.println("word调用成功啦!");
    }
    public void rr() {}
    
}

 

 

可以理解为装修房子(编译)买电器,我之前计划的有电视冰箱洗衣机,全都随着装修安装完毕了(静态加载),之后呢(运行),觉得少个微波炉,可是根本就没有规划微波炉的线路,那么就需要拆掉原先的线路为新的电器设置安装.
而现在我不想那么麻烦,就在装修的时候预留好电源插座这种接口(interface),只要所有的电器都实现了这个接口,有了两孔或者三孔的插头,那么我后期想增添任何电器都可以随时增加(动态加载)

 

Java类的加载の动态

标签:system   stack   for   java   try   style   nts   font   标准   

原文地址:http://www.cnblogs.com/sev7en-/p/6042964.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!