美文网首页
从一个对象中复制属性

从一个对象中复制属性

作者: 靳兆鲁 | 来源:发表于2020-04-20 11:21 被阅读0次
class Coder {

    private String name = "";
    private int age = 0;

    public void setName(String name) {
        this.name = name;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public void cloneFrom(Coder coder) {
        Field[] declaredFieldsFrom = coder.getClass().getDeclaredFields();
        Field[] declaredFields = getClass().getDeclaredFields();
        for (final Field declaredFieldFrom : declaredFieldsFrom) {
            for (final Field declaredField : declaredFields) {
                if (declaredFieldFrom.getName().equals(declaredField.getName())) {
                    try {
                        declaredField.set(this, declaredFieldFrom.get(coder));
                    } catch (IllegalAccessException e) {
                        e.printStackTrace();
                        declaredField.setAccessible(true);
                        declaredFieldFrom.setAccessible(true);
                        try {
                            declaredField.set(this, declaredFieldFrom.get(coder));
                        } catch (IllegalAccessException ex) {
                            ex.printStackTrace();
                        }

                        declaredField.setAccessible(false);
                        declaredFieldFrom.setAccessible(false);
                    }
                }
            }
        }
    }
}

相关文章

  • 从一个对象中复制属性

  • [JavaScript] Object.assign

    从一个或多个sources对象中,复制所有自身可枚举的属性到target对象中,并返回这个target对象。 (1...

  • 深复制与浅复制

    浅复制 浅复制就是,直接把一个对象(源对象)的属性复制到另一个对象(目标对象)中,当然,如果当属性中包含引用类型的...

  • Object.assign()用法讲解

    // 将所有可枚举属性的值从一个或多个源对象复制到目标对象。它将返回目标对象。 const target =...

  • JavaScript 的深拷贝与浅拷贝

    一、浅拷贝 拷贝-复制, 将一个对象的属性和方法复制到另一个对象上, 只复制一层,如果属性是对象,复制对象的地址。...

  • ES6 ---- 对象

    对象中属性名可以简写 对象中的方法简写 对象的合并将源对象的所有 可枚举属性 复制到目标对象 属性的遍历for ....

  • Object方法

    1、Object.assign(); 用于将所有可枚举属性的值从一个或多个源对象复制到目标对象,最后返回 目标对象...

  • Object.assign()

    Object.assign() 方法用于将所有可枚举属性的值从一个或多个源对象复制到目标对象。它将返回目标对象。 ...

  • JS:Object.assign()方法

    Object.assign() 方法用于将所有可枚举属性的值从一个或多个源对象复制到目标对象。它将返回目标对象。 ...

  • Vue-music 小知识点

    Object.assign() 方法用于将所有可枚举属性的值从一个或多个源对象复制到目标对象。它将返回目标对象。 ...

网友评论

      本文标题:从一个对象中复制属性

      本文链接:https://www.haomeiwen.com/subject/felrihtx.html