gpt4 book ai didi

java - Java 中的类型转换,技术信息

转载 作者:行者123 更新时间:2023-12-01 06:31:07 27 4
gpt4 key购买 nike

我试图了解当有人将一个特定类的对象转换为另一个类时会发生什么。即有两个类

 public class Aclass{

private String attribute1;

private List<String> attribute2;

//get/set methods

}

public class Bclass{

private String attribute1;

private List<int> attribute2;

//get/set methods

}

现在在另一个类中我有这两个对象,然后我转换它们。

public class Cclass{

Aclass aclass=new Aclass();

//returneddata is a method that returns an Aclass object that contained dta for the Aclass attributes
aclass=returneddata();

Bclass bclass=new Bclass();


bclass=Bclass.class.cast(aclass);

}

从上述类中,我获取了 java.lang.ClassCastException。

问题是我有两个类,每个类不仅包含两个属性,而且都包含 20 个属性。这 16 个属性在两个类中都很常见。

此外,returneddata 方法返回从存储库检索的对象。正如你所理解的,我想找到一种方法,将对象 Aclass 的 16 个数据属性转移到对象 Bclass 中。

我想要:

1)找到一种方法将16个公共(public)属性数据从一个对象重写到另一个对象

2) Actor 阵容的总体运作情况

有什么建议吗?

最佳答案

两个类具有相似的属性这一事实并不重要。重要的是 AclassBclass 彼此不相关:一个不是另一个的父类(super class)。如果您想在这些类之间共享或移动数据,您需要自己将数据从一个实例复制到另一个实例。

类型转换示例

假设我们有一个对象Fruitfruit = new Banana();。现在,如果您稍后需要在代码中调用 Banana 的方法,则可以使用强制转换 (Banana) 来强制转换 fruit。为什么?因为你碰巧知道 fruit 是一个 Banana 但 Java 编译器不知道这一点(它认为它是一个 Fruit 并且它也可能是不同的水果)。因此,您必须添加强制转换以添加有关 fruit 的附加信息并安全地执行操作。

关于java - Java 中的类型转换,技术信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11252040/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com