Hi Siva,
My answer to your first question,
"Why should the System class be responsible for copying arrays?" is this. The copying of arrays is that type of utility functionality that might be needed anywhere. In my humble opinion, that type of behavior is well placed in the System class.
My short answer to your second question,
"What are these classes, Array, Arrays, etc.?" is this: They are part of the Reflection API's, as well as providing other useful behavior specific to arrays. In particular, as you can see in the JavaDoc for the
Arrays class (in the java.util package), it provides sorting and searching capabilities for arrays. The Array class (in the java.lang.reflect package) provides
static (aka class) methods to create arrays dynamically, "on-the-fly" as needed.
Hope this helps.
Regards,
[ March 10, 2004: Message edited by: Howard Kushner ]