动态加载类的用法

1.动态加载类实现

首先要创建一个Word类的类类型,在通过类类型创建一个满足OfficeAble(标准)的一个对象s,通过对象s就可以调用Word类中的方法。

 

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();
    }}
}

 

OfficeAble(标准)的创建

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() {}
    
}

2.类类型的反射作用(可以查看一个类的属性和方法)

package T1;

import java.lang.reflect.Method;
import java.text.Annotation;
import java.text.DateFormat.Field;
import java.util.Arrays;

public class ClassTest {
  public static void main(String[] args) {
      Class  d=Word.class;
      //获取类的类名
System.out.println(d.getName());
//获取不包含包的类名 System.out.println(d.getSimpleName());
Method[] mes
=d.getDeclaredMethods();//获取方法 java.lang.reflect.Field[] sl= d.getDeclaredFields();//获取属性 System.out.println(Arrays.toString(mes)); for(int a=0;a<sl.length;a++){ String g=sl[a].getType().getName(); System.out.println(g); } System.out.println(Arrays.toString(sl)); } }

 

转载于:https://www.cnblogs.com/lgshiwoo/p/5545648.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值