Я очень хорошо знаком с Java и хотел бы знать, как правильно использовать интерфейс для соединения классов.
Допустим, в пакете Y есть интерфейс X для объема и областиshape
package Y;
public interface Shape {
public double volume();
public double surfaceArea();
}
Учитывая класс, называемый тетраэдр, где математика для объема и области соответственно
package Y;
public class Tetrahedron implements Shape{
Tetrahedron(double edge) {
(volume) Math.pow(edge, 3)/(6*Math.sqrt(2));
(area) Math.sqrt(3)*Math.pow(edge, 2);
}
}
К которому затем снова обращается основной класс, также в пакете Y
package Y;
public class Main {
static void main(String[] args){
Shape a = new Tetrahedron(5);
System.out.println(a.volume());
System.out.println(a.surfaceArea());
}
}
Как именно вы бы подключили интерфейс ко второму классу?Насколько я знаю, вы не можете просто переопределить значения volume
и surfaceArea
, выполнив что-то вроде volume = x
, так как именно можно использовать интерфейс для перехода от A к B к C?