Я начинаю с java. Я пытаюсь создать массив вложенных классов, и это не сработает. В частности, это не позволило мне инициализировать элементы массива после выделения.Массив классов в java
public class Salary {
class Person {
String name;
double salary;
void init (String n, double s) {
name = n;
salary = s;
}
}
public Salary (String args[]) { //the input is coming in pairs: name, salary
Person[] people; //creating the array
people = new Person[10]; //allocating 10 elements in array
int j = 0;
for (int i = 0; i < args.length; i+=2) {
people[j].init(args[i], Double.parseDouble(args[i+1])); //trying to initialize, and that is where it's giving me an error
System.out.format("%-15s %,10.2f%n",people[j].name, people[j].salary);
j++;
}
}
public static void main (String args[]) {
new Salary(args);
}
}
Спасибо!
Когда MadProgrammer говорит «выделяет пространство», это похоже на то, что вы сказали, я собираюсь построить дом ... здесь. И теперь есть место, много, зарезервированное для дома. Однако этого не существует. Он не был построен. В программировании это означает, что есть место для переменной, физическое местоположение в памяти, но оно еще не создано или «создано». В этом пространстве ничего не было. 'people [j] = new Person()' помещает объект 'Person' в это пространство. – aliteralmind
Большое вам спасибо !!!!! Я буду следовать вашим советам и учиться конструктору! – user3200689
Надеюсь, что это поможет .... – MadProgrammer