文档章节

Java中创建对象的5种不同方法

小贱是个程序员
 小贱是个程序员
发布于 2016/11/22 20:39
字数 161
阅读 123
收藏 1

码上生花,ECharts 作品展示赛正式启动!>>>

在下面的Java程序中我们用5种方式来创建 Employee对象。

ObjectCreation {
    public static void main(String... args) throws Exception {
        // By using new keyword
        Employee emp1 = new Employee();
        emp1.setName("Naresh");
        System.out.println(emp1 + ", hashcode : " + emp1.hashCode());
        // By using Class class's newInstance() method
        Employee emp2 = (Employee) Class.forName("org.programming.mitra.exercises.Employee")
                               .newInstance();
        // Or we can simply do this
        // Employee emp2 = Employee.class.newInstance();
        emp2.setName("Rishi");
        System.out.println(emp2 + ", hashcode : " + emp2.hashCode());
        // By using Constructor class's newInstance() method
        Constructor<Employee> constructor = Employee.class.getConstructor();
        Employee emp3 = constructor.newInstance();
        emp3.setName("Yogesh");
        System.out.println(emp3 + ", hashcode : " + emp3.hashCode());
        // By using clone() method
        Employee emp4 = (Employee) emp3.clone();
        emp4.setName("Atul");
        System.out.println(emp4 + ", hashcode : " + emp4.hashCode());
        // By using Deserialization
        // Serialization
        ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream("data.obj"));
        out.writeObject(emp4);
        out.close();
        //Deserialization
        ObjectInputStream in = new ObjectInputStream(new FileInputStream("data.obj"));
        Employee emp5 = (Employee) in.readObject();
        in.close();
        emp5.setName("Akash");
        System.out.println(emp5 + ", hashcode : " + emp5.hashCode());
    }
}

 

© 著作权归作者所有

小贱是个程序员
粉丝 3
博文 42
码字总数 18418
作品 0
珠海
程序员
私信 提问
加载中
请先登录后再评论。
Java面试题:面向对象,类加载器,JDBC, Spring 基础概念

为什么说Java是一门平台无关语言? 平台无关实际的含义是“一次编写到处运行”。Java 能够做到是因为它的字节码(byte code)可以运行在任何操作系统上,与底层系统无关。 2. 为什么 Java 不...

Java干货分享
2018/12/17
77
0
每周10道Java面试题:面向对象, 类加载器, JDBC, Spring 基础概念

本文作者:ImportNew -唐尤华 未经许可,禁止转载! 每周10道 Java 面试题由 ImportNew 整理编译自网络,欢迎投稿您面试中遇到过的疑难问题。 1. 为什么说Java是一门平台无关语言? 平台无关...

ImportNew
2018/12/13
0
0
14、Java并发性和多线程-Java ThreadLocal

以下内容转自http://ifeve.com/java-theadlocal/: Java中的ThreadLocal类可以让你创建的变量只被同一个线程进行读和写操作。因此,尽管有两个线程同时执行一段相同的代码,而且这段代码又有...

easonjim
2017/06/16
0
0
Java——刷题,考点,难点,查漏补缺

Java考试,考前突击,以下是刷往年例题中出现的错题和很模糊题的小结。 Java是强类型(strong typed)的,必须先声明后使用。声明有两种类型:primitive type 和 reference type。前者翻译为“...

sicolex
04/01
0
0
面试常问---java基础(一)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 https://blog.csdn.net/qq42896289/article/details/97622643 Java 基础(弄懂很重要,话不多...

梦无忧
2019/08/21
0
0

没有更多内容

加载失败,请刷新页面

加载更多

(转)Linux系统:centos7下搭建Rocketmq4.3中间件,配置监控台

原文:https://www.bbsmax.com/A/Ae5RRKe35Q/ 一、环境搭建 环境版本 centos7 jdk1.8 已搭建好 rocketmq4.3 1、下载安装包 网址 https://www.apache.org/dyn/closer.cgi?path=rocketmq/4.3.......

osc_3iv3c4fo
8分钟前
6
0
rocketmq 发送时异常:system busy 和 broker busy 解决方案(2019-06更新)

rocketmq 发送时异常:system busy 和 broker busy 解决方案(2019-06更新) 参考文章: (1)rocketmq 发送时异常:system busy 和 broker busy 解决方案(2019-06更新) (2)https://www.cnb...

osc_e7yhr5of
9分钟前
11
0
Redis雪崩效应以及解决方案

Redis雪崩效应以及解决方案 参考文章: (1)Redis雪崩效应以及解决方案 (2)https://www.cnblogs.com/toov5/p/9895929.html 备忘一下。...

osc_6k3dbwo9
10分钟前
9
0
学习rabbitmq (二) 使用rabbitmq

以为rabbitmq会折腾很久,但没有想到就这么多点内容,主要是服务端的懒得去折腾,比如docker的转移啊,发布啊,部署啥的 今天写了一些代码,用的c#弄的,新建两个项目,一个sender,一个rec...

osc_8hhlaimy
12分钟前
11
0
指定版本拉取

https://blog.csdn.net/csdn_idiot/article/details/106188831 https://blog.csdn.net/bjrxyz/article/details/90347292 chromium(linux环境)指定版本下载和编译教程 csdn_idiot 2020-05-2......

osc_hinb5m98
13分钟前
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部