

Java arrays aren't (technically) in java.io, java.util, or java.lang - kmontrose
http://programmers.stackexchange.com/a/147207/32

======
sehugg
Yes, arrays are special. Which makes some people furious.

<http://c2.com/cgi/wiki?JavaArraysShouldBeFirstClassObjects>

------
joejohnson
What does this mean?

    
    
      The first stable version was the JDK 1.0.2. is called Java 1

~~~
kmontrose
That's straight out of wikipedia.

[http://en.wikipedia.org/wiki/Java_version_history#JDK_1.0_.2...](http://en.wikipedia.org/wiki/Java_version_history#JDK_1.0_.28January_23.2C_1996.29)

Java version naming is a bit confusing, especially retrospectively.

Starting with the release of JDK 1.2 (which was the third release, after 1.0.2
and 1.1) Sun started referring to everything as Java 2 (J2SE, J2EE, etc.).
Presumably this means that there were two releases of Java 1, JDKs 1.0.2 and
1.1.

After JDK 1.4 (still Java 2) was Java 5.0, after that was Java 6 which dropped
the Java 2 nomenclature (now different versions are just JSE, JEE, and so on).

~~~
joejohnson
Oh, thank you. I think it was the grammar error which threw me: The first
stable version was the JDK 1.0.2. _which_ is called Java 1

------
euphoria83
What is [I ?

~~~
kmontrose
It's the class name for an integer array (int[]) in Java.

There's code in the linked answer showing how to get at it.

~~~
drtse4
Additional info here:
<http://java.sun.com/docs/books/jni/html/types.html#70113>

------
ExpiredLink
Why should they?

~~~
kmontrose
It's interesting, as they're a core language feature that isn't in the
java.lang package.

Obviously it's not harming anything that they're not.

~~~
wunderland
I don't understand. Didn't his test program output say that the superclass of
the array class was java.lang.Object? I'm sorry if this is a stupid question.
Doesn't that mean that arrays are in java.lang?

~~~
kmontrose
If you go high enough up the inheritance tree everything goes back to
java.lang.Object, so no.

If java arrays were something completely distinct from objects (like the
primitive types are/were) that would have been interesting, which is what I
was checking the super class for there.

