美文网首页
反射机制(一)

反射机制(一)

作者: coolTigers | 来源:发表于2021-04-02 00:15 被阅读0次

定义

Java反射机制是在运行状态中,对于任意一个类,都能知道这个类的所有属性和方法;对于任意一个对象,都能调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为Java语言的反射机制。
反射就是把Java类中的各种成分映射成一个个的Java对象。

实现

image.png

好处

1、可以在程序运行过程中,操作这些对象
2、可以解耦,提供程序的可拓展性

获取class对象的方式

1、Class.forName("全类名"):将字节码文件加载进内存,返回Class对象(多用于配置文件中,将类名定义在配置文件中,读取文件,加载类)
2、通过类名.class(多用于参数传递)
3、对象.getClass();getClass()方法在Object类中定义(多用于对象的获取字节码的方式)
Person类

package reflect;

public class Person {
    private int age;
    private String name;

    public Person(int age, String name) {
        this.age = age;
        this.name = name;
    }
    public Person() {

    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
}

三种方式打印类名

package reflect;

public class reflectDemo1 {
    public static void main(String[] args) throws Exception{
        // 1. Class.forName("全类名");
        Class cls1 = Class.forName("reflect.Person");
        System.out.println(cls1);
        // 2.类名.class
        Class cls2 = Person.class;
        System.out.println(cls2);
        // 3.对象.getClass()
        Person p = new Person();
        Class cls3 = p.getClass();
        System.out.println(cls3);
    }
}

结果


1.png

结论

同一个字节码文件(*.class)在一次程序运行过程中,只会被加载一次,不论通过哪一种方式获取的Class对象都是同一个。

相关文章

  • 反射之一

    总结内容源自一下文章粗浅看java反射机制反射机制应用实践谈谈java反射机制Java Reflection(反射...

  • 反射之二

    总结内容源自一下文章粗浅看java反射机制反射机制应用实践谈谈java反射机制Java Reflection(反射...

  • Java反射机制入门

    Java反射机制入门 一、什么是反射 JAVA反射机制(The JAVA reflection mechanism...

  • java反射机制

    java的反射机制 1 JAVA的反射机制是什么?反射机制能做什么?反射机制的优点与缺点2 认识 Class...

  • 详解Java反射机制(Reflection)

    详解Java反射机制(Reflection) 反射机制的作用 JAVA反射机制是在运行状态中,对于任意一个类,都能...

  • 反射机制基础

    一、反射 1、反射机制 反射机制: JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方...

  • OC的反射机制

    目录 1 反射机制的概念 2 反射机制原理 首先还是按照惯例和大家解释下什么反射机制? 反射的概念是由Smith在...

  • 反射之三

    总结内容源自以下文章 粗浅看java反射机制 反射机制应用实践 谈谈java反射机制 Java Reflectio...

  • Java基础之反射

    Java基础之—反射(非常重要)Java中反射机制详解Java进阶之reflection(反射机制)——反射概念与...

  • Java学习day-23:反射机制

    一、反射机制_Class对象获取: 1.反射机制: 反射机制是java的动态性之一;一个类被加载后,JVM 会创建...

网友评论

      本文标题:反射机制(一)

      本文链接:https://www.haomeiwen.com/subject/uugxkltx.html