Как передать класс Dimensions в конструктор Courier в качестве параметра?
Задача состоит в том, чтобы передать класс Dimensions
public class Dimensions {
private final int width;
private final int height;
private final int length;
public Dimensions(int width, int height, int length) {
this.width = width;
this.height = height;
this.length = length;
}
public int getWidth() {
return width;
}
public Dimensions setWidth(int width) {
return new Dimensions(width, height, length);
}
public int getHeight() {
return height;
}
public Dimensions setHeight(int height) {
return new Dimensions(width, height, length);
}
public int getLength() {
return length;
}
public Dimensions setLength(int length) {
return new Dimensions(width, height, length);
}
public String toString() {
return "Габариты груза " +
"ширина: " + width +
", высота: " + height +
", длина: " + length;
}
}
в конструктор Courier в качестве одного из параметров.
public class Courier {
private final int dimensions;
private final int weight;
private final String address;
private final boolean rotate;
private final String regNumber;
private final boolean fragile;
public Courier(int dimensions, int weight, String address, boolean rotate, String regNumber, boolean fragile) {
this.dimensions = dimensions;
this.weight = weight;
this.address = address;
this.rotate = rotate;
this.regNumber = regNumber;
this.fragile = fragile;
}
public int getDimensions() {
return dimensions;
}
public Courier setDimensions(int dimensions) {
return new Courier(dimensions, weight, address, rotate, regNumber, fragile);
}
public int getWeight() {
return weight;
}
public Courier setWeight(int weight) {
return new Courier(dimensions, weight, address, rotate, regNumber, fragile);
}
public String getAddress() {
return address;
}
public Courier setAddress(String address) {
return new Courier(dimensions, weight, address, rotate, regNumber, fragile);
}
public boolean isRotate() {
return rotate;
}
public Courier setRotate(boolean rotate) {
return new Courier(dimensions, weight, address, rotate, regNumber, fragile);
}
public String getRegNumber() {
return regNumber;
}
public Courier setRegNumber(String regNumber) {
return new Courier(dimensions, weight, address, rotate, regNumber, fragile);
}
public boolean isFragile() {
return fragile;
}
public Courier setFragile(boolean fragile) {
return new Courier(dimensions, weight, address, rotate, regNumber, fragile);
}
}
При попытках использовать один класс в другом или просто нет результата или выдаётся ошибка. Все переменные по условию должны оставаться final.
Ответы (1 шт):
Автор решения: Fleckinger
→ Ссылка
В вашем классе Courier поле dimensions имеет тип int, если же вы хотите передавать туда объект Dimension измените тип поля на Dimension и соответственно измените конструктор.