Advertisement

[java] instatiating a class as an array

Started by April 17, 2000 04:12 AM
1 comment, last by fabel 24 years, 8 months ago
Hey all just a quick question, from all my poking and prodding of java there is one thing it appears it can''t do and Im hoping i''m wrong. anyways say I have a class class point3d { double x; double y; double z; public point3d() { x = y = z = 0.0; } if I do point3d[] blah = new point3d[10]; and then try and access blah[2].x i get a null pointer exception. im just curious if there is a way to do this? I know you can with the base objects in Java, strings, ints and such but that is all native code I believe. I allready found a work around for my problem but it would be nice to know if I was wrong or not on this. Tim Holwig fabel@mindspring.com
Well I believe that actually
point3d[] blah = new point3d[10];
creates an array of 10 point3d *references*, not objects. As references they are properly initialized to null. I''m pretty sure that once you created the reference array, you need to intialize the references to objects by looping through and calling the proper constructors.
Advertisement
And to eleborate: you have to write something like (please ignore any syntax errors):


point3d[] blah = new point3d[10];

for (int i=0;i<10;i++)
blah = new point3D();<br><br>blah[2].x; // No error!<br></code><br><br>Edited by - felonius on 4/17/00 5:21:21 AM
Jacob Marner, M.Sc.Console Programmer, Deadline Games

This topic is closed to new replies.

Advertisement