Java创建对象的几种方式

1. 直接new

最容易也是最经常使用的方式

		User user1 = new User(); // 1. 直接new
        user1.setUserName("user1");
        System.out.println(user1);```

2.使用Class类的newInstance方法

		User user2 = (User) Class.forName("com.gugu.demo.createobject.User").newInstance();// 2.使用Class类的newInstance方法
        user2.setUserName("user2");
        System.out.println(user2);

3. 使用Constructor类的newInstance方法

        Constructor<User> constructor = User.class.getConstructor();
        User user3 = constructor.newInstance(); // 3. 使用Constructor类的newInstance方法
        user3.setUserName("user3");
        System.out.println(user3);

4. 使用clone方法

        User user4 = (User) user2.clone(); // 4. 使用clone方法,但是类要实现Cloneable以及 重写clone方法
        user4.setUserName("user4");
        System.out.println(user4);

5. 借助其他工具类进行序列化反序列化如json

注意需要引入json包

        User user5 = (User) JSON.parseObject(user1.toString(), User.class); // 5. 借助其他工具类进行序列化反序列化如json
        user5.setUserName("user5");
        System.out.println(user5);

源码见链接

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值