VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > 编程开发 > Java教程 >
  • Java连载120-反射机制获取构造方法和父类、父接口

一、使用反射机制来

(1)获取一个类;

(2)获取类的构造函数

(3)通过构造函数来获取一个对象

 

复制代码
package com.bjpowernode.java_learning;

import java.lang.reflect.*;

​


public class D120_1_ConstructerOfClass {

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

    //1.获取类

    Class c = Class.forName("com.bjpowernode.java_learning.D120_Customer");

   

    //2.获取特定的构造方法

    Constructor con = c.getDeclaredConstructor(String.class,int.class);

   

    //3.创建对象

    Object o = con.newInstance("张三",25);

    System.out.println(o);

  }

​


}

class D120_Customer{

  String name;

  int age;

 

  D120_Customer(String name,int age){

    this.name = name;

    this.age = age;

   

  }

 

  public String toString() {

    return "Customer[" + name + "," + age + "]";

  }

}
复制代码

二、关于类获取父类和父接口

 

复制代码
package com.bjpowernode.java_learning;

import java.lang.reflect.*;

​


public class D120_2_ParentClassAndInterfaceOfClass {

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

    Class c = Class.forName("java.lang.String");

   

    //获取父类

    Class superClass = c.getSuperclass();

   

    System.out.println(superClass.getName());

    System.out.println("================");

       

      //获取父接口

      Class[] ins = c.getInterfaces();

      for(Class in:ins) {

        System.out.println(in.getName());

      }

  }

}
复制代码

三、反射的缺点

(1)性能问题。反射机制不是直接执行代码,性能问题的程度取决于程序中是如何使用反射的,如果他作为程序运行中相对很少涉及的部分,缓慢的性能将不会是问题。

(2)使用反射会模糊程序内部实际要发生的事情。

四、源码:

D120_1_ConstructerOfClass.java

D120_2_ParentClassAndInterfaceOfClass.java

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

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

 

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


相关教程