关于java的接口与类的继承问题

qq_34969230 qq_34969230 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
由于还在自学,书上没有出现完整的实例,所以我自己编写了一个通过继承接口与类准备实现数学运算的常规的加减乘除法,但是在继承接口时出现了错误,无法正确的实现继承,该如何改善

//定义草稿数学的有关double运算的接口
interface caogaoMathDouble {
public static double add(double a, double b) {
return a + b;
}

public static double add(double a, int b) {
return a + b;
}

public static double add(int a, double b) {
return a + b;
}

public static double remove(double a, double b) {
return a - b;
}

public static double remove(int a, double b) {
return a - b;
}

public static double remove(double a, int b) {
return a - b;
}

public static double abs(double a,double b) {
return Math.abs((a+b)/2);
}
}

// 定义草稿数学的有关乘法运算的接口
interface caogaoMathMult {
public static int mult(int a, int b) {
return a * b;
}

public static double mult(double a, int b) {
return a * b;
}

public static double mult(int a, double b) {
return a * b;
}

public static double mult(double a, double b) {
return a * b;
}
}

//定义草稿数学的有关除法运算的接口
interface caogaoMathDiv {
public static int div(int a, int b) {
return a / b;
}

public static double div(double a, int b) {
return a / b;
}

public static double div(int a, double b) {
return a / b;
}

public static double div(double a, double b) {
return a / b;
}
}

// 定义草稿数学总和接口,继承草稿数学的有关乘法运算、除法运算、以及double加减法运算的接口
interface caogaoMathZonghe extends caogaoMathDiv, caogaoMathDouble, caogaoMathMult {

}

// 定义草稿数学的抽象类,只包含int加减法运算
public abstract class caogaoMath{
private int a;
private int b;

public caogaoMath(int a, int b) {
// TODO 自动生成的构造函数存根
this.a = a;
this.b = b;
}

public int add() {
return a + b;
}

public int remove() {
return a - b;
}

public int abs() {
return Math.abs((a+b)/2);
}

}
//定义草稿类,继承抽象类草稿数学并实现草稿数学的总和接口
class caogao extends caogaoMath implements caogaoMathDiv {

public caogao(int a, int b) {
super(a, b);
// TODO 自动生成的构造函数存根
}

public static void main(String[] args) {
caogao caogao=new caogao(2, 5);
System.out.println(caogao.abs());
System.out.println(caogao.remove());
System.out.println(caogao.add());
//在草稿类中正确继承了草稿数学中的类,但是没有正确实现草稿数学总和接口中的各个方法
}
}
/*
//定义草稿类,继承抽象类草稿数学并实现草稿数学的有关除法运算的接口
class caogao extends caogaoMath implements caogaoMathDiv {

public caogao(int a, int b) {
super(a, b);
// TODO 自动生成的构造函数存根
}

public static void main(String[] args) {
caogao caogao=new caogao(2, 5);
System.out.println(caogao.abs());
System.out.println(caogao.remove());
System.out.println(caogao.add());
//在草稿类中正确继承了草稿数学中的类,但是没有正确实现草稿数学的有关除法运算接口中的方法
//也就是说并不是在第71行时接口继承接口时错误的问题
}
}
*/
...全文

相关推荐

评论 6
收藏 已收藏
分享
返回顶部
qq_34969230
Java 51,407 成员 86,128 内容