Я пытаюсь запустить эту программу, которая должна содержать класс Building
, который распространяется на 2 других класса TradeCenter
и SportCenter
. Программа должна распечатать информацию для 3 зданий (массив). Проблема в том, что я продолжаю получать эту ошибку Incompatible types issue
для int в массиве, и я не уверен, как ее исправить, так как я новичок. Кто-нибудь может помочь?Проблема с несовместимыми типами
class Building {
String Name;
String Addres;
private int floors;
Building(String N, String A, int F) {
Name = N;
Addres = A;
floors = F;
}
public void SetFloors(int f) {
if (f <= 0)
floors = 1;
else
floors = f;
}
public int GetFloors() {
return floors;
}
void Print() {
System.out.print("Name=" + Name + "Addres=" + Addres + "floors=" + floors);
}
}
class TradingCenter extends Building {
String Owner;
String Brands[] = {"Brand"};
TradingCenter(String N, String A, int F, String O, String B[]) {
super(N, A, F);
Owner = O;
Brands = B;
}
}
class SportCenter extends Building {
String Sports[] = {"Sport"};
String Teams[] = {"Team"};
SportCenter(String N, String A, int F, String S[], String T[]) {
super(N, A, F);
Sports = S;
Teams = T;
}
}
class DemoBuilding {
public static void main(String args[]) {
Building arr[] = new Building[3];
arr[0] = new TradingCenter("Mall Plovdiv", "Smirnenski", 3, "Unknown", "Brand");
arr[1] = new SportCenter("ATLETIK", "Trakia", 1, "Sport1", "Team3");
arr[2] = new TradingCenter("Paradise Mall", "Sofia, bul. Cherni vruh 100", 5, "Unknown", "Brand");
for (int i = 0; i < arr.length; i++)
arr[i].Print();
}
}
сообщение точное сообщение об ошибке, которое включает в себя номера строк. Кроме того, соглашение Java должно начинать имена методов с нижнего регистра, а инструменты будут более полезными, если вы будете следовать этому соглашению. – chrylis
'" (int) 3 "' является строкой, а не int. Вместо этого используйте только «3». И «Brand 2» - это просто String, а не массив String. Это должно быть исправлено. – Tom
Я пробовал, но возникла такая же ошибка –