`

Java中动态实例化一个对象

 
阅读更多

使用场合:不知道具体要去实例化那个类的对象,通常这个参数由用户传入。即类名不确定!

使用方法:

  1. Class newTraffic = Class.forName("Car"); 
  2. Traffic t= (Traffic)newTraffic.newInstance(); 

    说明:

1、newTraffic为定义的一个变量,类型为Class,用来保存我们动态创建对象实例的类名;

2、forName()这个方法传入的参数是类名,即Car是我们定义好的一个类,返回的是Car这个类;

3、newInstance()即为实例化一个对象,注意它无参数,即它默认调用一个不带参的构造方法,如果你没定义这个不带参的构造方法,系统会调用默认的不带参的构造方法;

4、(Traffic)newTraffic.newInstance(); 这里使用了强制类型转换,如果不进行转换,它默认返回一个原生的Object,这个Object无法调用Car类的任何方法;

5、Traffic是我们定义的一个接口,其中有Car和Plane等具体的类来实现这个接口中的方法。后面可以通过t来调用接口中的方法,当然这个方法的具体实现是放到Car或者Plane等类中的,这样就好比是我们动态创建了Car类,然后调用它里面的一些方法。说得有点通俗,这个在Java里称为接口回调

分享到:
评论

相关推荐

    java实例化对象的过程

    java实例化对象的过程

    Java实例化一个抽象类对象的方法教程

    大家都知道抽象类无法实例化,就无法创建对象...所以下面这篇文章主要给大家介绍了关于Java实例化一个抽象类对象的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧。

    java 基础 类对象创建实例化过程 实例解析

    继承关系:类的实例化顺序 * 执行过程为:启动类是否为继承关系树中的一个,如果是则先执行启动类的所有父类的静态语句块;然后执行启动类的静态语句块static{} -> * 执行启动类的main函数 -> 创建对象的继承树从...

    java中通过键盘输入来实例化类对象数组,同时对类对象排序

    java中通过键盘输入来实例化类对象数组,同时对类对象排序,希望初学java的同学们可以下载下学习下

    Java反射和动态代理实例

    可以学习如何通过Java的反射机制实例化对象、调用对象的方法、操作对象的私有成员变量、改变数组中的某项的值、改变数组大小等;可以学习Java的动态代理模式、学习Java工厂模式以及如何将工厂模式与属性文件相结合。

    java 使用静态成员变量计算内存中实例化的对象数目

    java 使用静态成员变量计算内存中实例化的对象数目

    通过java类的路径实例化类并调用方法

    通过java类的路径实例化类并调用方法:仅仅知道类的路径,就可以实例化对象,利用反射机制调用其方法

    java源码包---java 源码 大量 实例

    在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天...

    JAVA上百实例源码以及开源项目源代码

    在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天...

    java实现内存动态分配

    Java中分配堆内存是自动初始化的,即为一个对象分配内存的时候,会初始化这个对象中变量。虽然Java中所有对象的存储空间都是在堆中分配的,但是这个对象的引用却是在栈中分配,也就是说在建立一个对象时在堆和栈中都...

    Java源码包100个设计实例.zip

    ejbCreate函数用于初始化一个EJB实例 EJB中JNDI的使用源码例子 EJB的真实世界模型(源代码).rar ftp文件传输 ftp简易服务器.rar HAHA CHAT Java仿QQ聊天程序源代码.rar html 标记大全.rar iCHAT聊天室基于Java.rar ...

    Java让泛型实例化的方法

    主要介绍了Java让泛型实例化的方法,文中示例代码非常详细,帮助大家更好的理解和学习,感兴趣的朋友可以了解下

    Java对象实例化

    JAVA类,只要知道了类名(全名)可以创建其实例...  除此之外,还可以利用java.lang.Class类来实现JAVA类的实例化。  1、空构造方法  如果类有空构造方法,如下面的类 public class NewObject { String name;

    由浅入深详解Java 类的实例化顺序

    在子类对象被实例化的过程中,变量、构造方法以及代码块三者的先后顺序为: 1. 父类的静态变量和静态代码块,按代码先后顺序执行 2. 子类的静态变量和静态代码块,按代码先后顺序执行 3. 父类的成员变量和普通...

    Jmockdta是一款实现模拟JAVA类型或对象的实例化并随机初始化对象的数据的工具框架

    Jmockdta是一款实现模拟JAVA类型或对象的实例化并随机初始化对象的数据的工具框架。单元测试的利器。

    java中用数组为一个类定义多个对象

    java中用数组为一个类定义多个对象,并对其进行实例化

    java对象映射器(基于jackson将Java对象转为json,或者将json转为Java对象)

    用来干啥? 答:将JSON解析为Java对象的过程称为 [从JSON反序列化Java对象] 从Java对象生成JSON的过程称为 [序列化Java对象到JSON] ...不光是这一个场景,就像有些时间的格式到后端变成能接受的值等。

    JAVA上百实例源码以及开源项目

    在有状态SessionBean中,用累加器,以对话状态存储起来,创建EJB对象,并将当前的计数器初始化,调用每一个EJB对象的count()方法,保证Bean正常被激活和钝化,EJB对象是用完毕,从内存中清除…… Java Socket 聊天...

    基于java的企业级应用开发:Bean的实例化.ppt

    Bean的实例化 在面向对象的程序中,想要使用某个对象,就需要先实例化这个对象。同样,在Spring中,要想使用容器中的Bean,也需要实例化Bean。实例化Bean有三种方式,分别为构造器实例化、静态工厂方式实例化和实例...

    单例模式java代码

    编写一个类LimitInstanceClass,...编写一个UseLimitInstanceClass类,在其main方法中实例化10个AccessLimitInstanceClassThread线程对象,并启动各个线程。 设置InstanceLimit.cfg的内容为3,写出你的程序的运行结果。

Global site tag (gtag.js) - Google Analytics