Java反射之类的实例对象的三种表示方式总结

 更新时间:2016年10月02日 09:18:09   投稿:jingxian  
下面小编就为大家带来一篇Java反射之类的实例对象的三种表示方式总结。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

如下所示:

<span style="font-size:14px;">package com.imooc.reflect;

public class ClassDemo1 {
public static void main(String[] args) {
  
  //Foo的实例对象如何表示
  Foo foo1 = new Foo();//foo1就表示出来了
  //Foo这个类,也是一个实例对象,Class类的实例对象,如何表示呢、
  //任何一个类都是Class的实例对象,这个实例对象那个有三个表示方式
  //第一种表示方式--》实际在告诉我们任何一个类都有一个隐含的静态成员变量class
  Class class1 = Foo.class;
  
  //第二种表示方式 已经知道该类的对象通过getClass方法
  Class class2 = foo1.getClass();
  
  /*
   * 官网class1 ,class2表示了Foo类的类类型(class type)
   * 万事万物 都是对象
   * 类也是对象,是Class类的实例对象
   * 这个对象我们称为该类的类类型
   */
  //不管class1 or class2都代表了Foo类的类类型,一个类只可能是Class;类的一个实例对象
  System.out.println(class1==class2);//true'
  
  //第三种表达方式
  Class class3 = null;
  try {
    class3 = Class.forName("com.imooc.reflect.Foo");
  } catch (ClassNotFoundException e) {
    e.printStackTrace();
  }
  //
  System.out.println(class2==class3);//true
  
  //我们完全尅通过类的类类型创建该类的对象实例--》通过class1 or class2 or class3
  //创建Foo类的实例对象
  try {
    //需要有无参数的构造方法
    Foo foo = (Foo) class1.newInstance();//需要强转
    foo.print();
  } catch (Exception e) {
    e.printStackTrace();
  }
}
}
//
class Foo{
  public void print(){
    System.out.println("foo");
  }
}

</span>

以上就是小编为大家带来的Java反射之类的实例对象的三种表示方式总结的全部内容了,希望对大家有所帮助,多多支持脚本之家~

相关文章

  • SpringBoot的自动配置原理解析

    SpringBoot的自动配置原理解析

    这篇文章主要介绍了SpringBoot的自动配置原理解析,SpringBoot的自动配置要从它的启动类@SpringBootApplication说起,点进注解,@Target设置当前注解可以标记在哪,(ElementType.type)表示标注在类上面,需要的朋友可以参考下
    2023-08-08
  • SpringBoot中MapStruct实现优雅的数据复制

    SpringBoot中MapStruct实现优雅的数据复制

    本文主要介绍了SpringBoot中MapStruct实现优雅的数据复制,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-08-08
  • 如何利用IDEA搭建SpringBoot项目整合mybatis实现简单的登录功能

    如何利用IDEA搭建SpringBoot项目整合mybatis实现简单的登录功能

    这篇文章主要介绍了如何利用IDEA搭建SpringBoot项目整合mybatis实现简单的登录功能,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-08-08
  • Mybatis Generator逆向工程的使用详细教程

    Mybatis Generator逆向工程的使用详细教程

    这篇文章主要介绍了Mybatis Generator逆向工程的使用详细教程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-06-06
  • idea编译报错-代码没问题IDEA编译不通过的处理方案

    idea编译报错-代码没问题IDEA编译不通过的处理方案

    这篇文章主要介绍了idea编译报错-代码没问题IDEA编译不通过的问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-12-12
  • Open-Feign整合hystrix降级熔断实战记录

    Open-Feign整合hystrix降级熔断实战记录

    这篇文章主要介绍了Open-Feign整合hystrix降级熔断实战记录,本文通过实例图文相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-09-09
  • Maven发布项目 (jar包) 到Nexus私服中的操作

    Maven发布项目 (jar包) 到Nexus私服中的操作

    这篇文章主要介绍了Maven发布项目 (jar包) 到Nexus私服中的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-10-10
  • Java 根据网络URL获取该网页上面所有的img标签并下载图片

    Java 根据网络URL获取该网页上面所有的img标签并下载图片

    这篇文章主要介绍了Java 根据网络URL获取该网页上面所有的img标签并下载图片,帮助大家更好的理解和使用Java,感兴趣的朋友可以了解下
    2020-11-11
  • Java设计模式之单例模式简析

    Java设计模式之单例模式简析

    这篇文章主要介绍了Java设计模式之单例模式简析,单例模式是常用的设计模式,在我们的系统乃至在框架中都普遍被用到,单例模式就是使一个类有且只有一个实例用于外部访问,这样大大的节省了系统的资源,需要的朋友可以参考下
    2023-12-12
  • Java8 Stream flatmap中间操作用法解析

    Java8 Stream flatmap中间操作用法解析

    这篇文章主要介绍了Java8 Stream flatmap中间操作用法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-07-07

最新评论