OOP中的对象数组

我写了这样的一堂课-

class foo
    {
       int t,b;
       foo(int a,int b)
          {
              this.a = a; this.b = b
          }
       foo(){}
    }

现在我想创建一个对象数组。这两行之间有什么区别

foo[] ab = new foo[100];
foo ab[100] = new foo[100];
sl819532666 回答:OOP中的对象数组

区别在于第二行甚至不会编译,因为这在Java中是无效的语法。因此,除了重复100信息还有“感觉”之外,该部分仅属于语句的右侧。

在左侧,您有类型。类型是“ foo数组”。该类型的实际实例中的元素数量为“仅运行时”。它不反映在类型中。

,

foo [] ab =新的foo [100];

上面的代码行将创建一个引用变量,该引用变量包含对包含100个foo类型的声明的对象的引用(类名应在Initial Caps中)

foo ab [100] =新的foo [100]; 当您声明具有大小的数组变量时,此行代码将引发编译错误。

您可以通过创建一个新对象并为每个索引赋予变量来替换此行。 ab [0] =新的foo(1,2); 这样,您可以创建对象并分配给数组索引。

本文链接:https://www.f2er.com/3160725.html

大家都在问