VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > 编程开发 > Java教程 >
  • Java连载112-获取Class对象的三种方式

一、获取class对象的三种方式

1.我们先写一个基础类

 

复制代码
package com.bjpowernode.java_learning;

​


public class D112_2_Emploe112 {

 

  private String name;

 

  public D112_2_Emploe112(){

   

  }

  public D112_2_Emploe112(String name) {

    this.name = name;

  }

  public void work() {

    System.out.println(name+"在工作!");

  }

}
复制代码

 

​2.然后使用三种方式来获取类

 

复制代码
package com.bjpowernode.java_learning;

import java.util.Date;

​


public class D112_1_ReflectTest {

  public static void main(String[] args) throws Exception {

    //获取Class类型对象的三种方式


    //第一种方式

    Class c1 = Class.forName("com.bjpowernode.java_learning.D112_2_Emploe112");

    //c1引用保存内存地址指向堆中对象,该对象代表的是D112_2_Emploe112整个类


   

    //第二种方式


    //java中每个类型class属性

    Class c2 = D112_2_Emploe112.class;

   

    //第三种方法


    //java语言中任何一个java对象都有getClass方法

    D112_2_Emploe112 d = new D112_2_Emploe112();

    Class c3 = d.getClass();//c3是运行时类(d的运行时类是D112_2_Emploe112

   

    Class c4 = Date.class;//c4代表Date这个类

    Class c5 = Class.forName("java.util.Date");//必须写类的全名,类全名带有包名

    Date d1 = new Date();

    Class c6 = d1.getClass();

   

  }

}
复制代码

 

 

二、源码:

D112_1_ReflectTest.java

D112_2_Emploe112.java

https://github.com/ruigege66/Java/blob/master/D112_1_ReflectTest.java

https://github.com/ruigege66/Java/blob/master/D112_2_Emploe112.java​

出  处:https://www.cnblogs.com/ruigege0000/p/12791308.html


相关教程