Массивы реализованы как объекты в java справа? Если да, где я могу посмотреть исходный код для класса массива. Мне интересно, если переменная длины в массивах определена как константа, и если да, почему это не во всех заглавных буквах LENGTH, чтобы сделать код более понятным.
Как реализованы массивы в Java?
Ответ 1
Хотя массивы являются объектами в том смысле, что они наследуют java.lang.Object, классы создаются динамически как особая особенность языка. Они не определены в исходном коде.
Рассмотрим этот массив:
MySpecialCustomObject[] array;
Для этого нет исходного кода. Вы создали его в коде динамически.
Причина, по которой длина в нижнем регистре, и поле действительно связано с тем, что более поздние стандарты кодирования Java не существовали в то время, когда это было разработано. Если массив разрабатывался сегодня, вероятно, это был бы метод getLength().
Длина - это конечное поле, определенное при построении объекта, оно не является константой, поэтому некоторые стандарты кодирования не хотят, чтобы это было в верхнем регистре. Однако, как правило, в Java сегодня все обычно делается как константа в верхнем регистре или помечено как закрытое с помощью общедоступного метода getter, даже если оно является окончательным.
Ответ 2
Можно сказать, что массив - это контейнер, который содержит фиксированную длину данных одного типа данных. например.
int[] MyArray = new int[101]; // allocates memory for 101 integers, Range from 0 to 100.
и для многомерных
String[][] names = {{"FirstName", "LastName"},{"Kaji", "Islam"},...};
и для массива символов
char[] ch={'a','b'....};