I am doing homework of making a simple calculator using java and interface in java. but the class that implements java gives error saying
The public type `BasicCalculator` must be defined in its own file
The type `BasicCalculator` must implement the inherited abstract method `calculate.mul(int, int)
here is the code
interface calculate{
public int add(int a, int b);
public int sub(int a, int b);
public int mul(int a, int b);
public int div(int a, int b);
}
public class BasicCalculator implements calculate {
public int a;
public int b;
public int add(int a, int b) {
return a + b;
}
public int subtract(int a, int b) {
return a - b;
}
public int multiply(int a, int b) {
return a * b;
}
public int division(int a, int b){
return a/b;
}
}
public class test {
public static void main(String[] args) {
calculate c= new BasicCalculator();
c.add(5,6);
}
}
There are a couple of issues here.
First, since BasicCalculator
is a public class, it needs to be defined in its own file named BasicCalculator.java
.
Second, the method names in BasicCalculator
must match those you're trying to implement in calcualte
- i.e., sub
, mul
and div
instead of subtract
, multiply
and division
.