最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
JAVA与C++ 对对象数组的不同处理
时间:2022-07-02 18:19:18 编辑:袖梨 来源:一聚教程网
问题:
public class test
{
public static void main(String[] args)
{
Person[] a = new Person[2];
for(int i = 0; i < 2; i++)
{
a[i].age = i; //空指针异常
System.out.println(a[i].age);
}
}
}
class Person
{
public int age;
public Person(int age)
{
this.age = age;
}
}
思考:
数组类是一个由虚拟机支持的特殊类,它是由操作码newarray创建的,是Array类的实例。Person[] a = new Person[2]只是建立了一个Array对象对对象元素Person[0] Person[1]并未分配空间(这一点与C++不同C++在创建一个对象数组是同时也已为数组中的对象分配了空间 Person* a = new Person[2])
public class test
{
public static void main(String[] args)
{
Person[] a = new Person[2];
for(int i = 0; i < 2; i++)
{
a[i].age = i; //空指针异常
System.out.println(a[i].age);
}
}
}
class Person
{
public int age;
public Person(int age)
{
this.age = age;
}
}
思考:
数组类是一个由虚拟机支持的特殊类,它是由操作码newarray创建的,是Array类的实例。Person[] a = new Person[2]只是建立了一个Array对象对对象元素Person[0] Person[1]并未分配空间(这一点与C++不同C++在创建一个对象数组是同时也已为数组中的对象分配了空间 Person* a = new Person[2])
相关文章
- 遮天世界境界怎么划分 09-17
- 燕云十六声如何速刷马头套 09-17
- 新三国志曹操传张绣怎么培养 09-17
- 逆战未来芯片如何搭配 09-17
- 崩坏星穹铁道长夜月值得抽吗-长夜月抽取建议 09-17
- 顶级弓箭手白蛇哪些玩法技巧 09-17