zoukankan      html  css  js  c++  java
  • Class类的使用

    public class ClassDemo1{

      public static void main(String[] args){

        //Foo的实例对象如何表示

        Foo foo1 = new Foo();//foo1就表示出来了。

        //Foo这个类也是一个实例对象,Class类的实例对象,如何表示呢

        //任何一个类都是Class的实例对象,这个实例对象有三种表示方式

        //第一种表示方式--->实际在告诉我们任何一个类都有一个静态成员

        Class c1 = Foo.class;

        //第二种表达方式 已经知道该类的对象通过getClass方法

        Class c2 = foo1.getClass();

        /*

        官网 c1,c2 表示了Foo类的类类型(class type)

        万事万物皆对象,

        类也是对象,是Class类的实例对象

        这个对象我们称为该类的类类型

        */

        //不管c1 or c2 都代表了Foo类的类类型,一个类只可能是Class类的一个实例对象

        System.out.println(c1 == c2);//(true)

        //第三种表达方式

        Class c3 = null;

        try{

          c3 = Class.forName("com.imooc.reflect.Foo");

        } catch (ClassNotFoundException e){

          e.printStackTrace();

        }

        System.out.println(c2 == c3);//(true)

        //我们完全可以通过类的类类型创建该类的对象实例---->通过c1 or c2 or c3 创建Foo的实例对象..

        try{

          Foo foo = (Foo)c1.newInstance();//类中需要有无参数的构造方法

          foo.print();

        } catch(InstantiationException e){

          e.printStackTrace();

        } catch(IllegalAccessException e){

          e.printStackTrace();

        }

      }

    }

    class foo{

      void print(){

        System.out.println("Foo");

      }

    }

  • 相关阅读:
    c++模板类的使用,编译的问题
    js中对象深度拷贝的方法(浅拷贝)
    java8 Function 函数式接口的妙用
    Redis Web Ui管理工具
    前端省市联动,与django传递信息
    做人做事,行为规范
    几斤猫尿,醉享生活
    分布式系统之平台三大支柱
    祭奠十年,我今起步
    一步一步,从一而终
  • 原文地址:https://www.cnblogs.com/ahaijava/p/10169422.html
Copyright © 2011-2022 走看看