如何解决使用C Sharp在Java中重新创建嵌套的静态类
我正在将代码从Java移植到C Sharp。在Java中,我有以下课程。
public class ClassA{
...
private List<ClassA.ClassB> classBs = new ArrayList();
public classA(){
for(int i = 0; i < 10; i++){
this.classBs.add(new ClassA.ClassB());
}
}
public static class ClassB{
private int value;
public ClassB(){
this.value = 0;
}
}
}
需要注意的重要一点是,
this.classBs.add(new ClassA.ClassB());
我们正在创建静态内部类的实例。
现在,在C Sharp中,我无法重新创建相同的静态内部类。 经过研究,我发现我只能执行以下一项操作,
- 将内部类classB设为非静态,或将classB的所有成员设为静态。
- 在class A之外定义classB。
似乎都没有重新创建Java的确切代码。我该如何进行呢?
解决方法
Java嵌套静态类与常规C#嵌套类非常相似:
public class ClassA
{
private IList<ClassB> classBs = new List<ClassB>();
public ClassA()
{
for (int i = 0; i < 10; i++)
{
this.classBs.Add(new ClassB());
}
}
public class ClassB
{
internal int value;
public ClassB()
{
this.value = 0;
}
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。