weixin_53204887 2021-07-23 17:16 采纳率: 0%
浏览 34

java问题 接口和类对象的区别

interface Area{
    public abstract void CalculateArea();
}
class MyCircle implements Area{
    private int r;
    private  double p=3.14;
    public MyCircle() {
    }
  public MyCircle(int r) {
        this.r = r;
    }
    public int getR() {
        return r;
    }
    public void setR(int r) {
        this.r = r;
    }
 
    @Override
    public void CalculateArea() {
        System.out.println("圆的面积是"+r*r*p);
    }
}
class MyRectangle implements  Area{
private int chang;
private int kuan;
    public MyRectangle() {
    }
    public MyRectangle(int chang, int kuan) {
        this.chang = chang;
        this.kuan = kuan;
    }
    public int getChang() {
        return chang;
    }
    public void setChang(int chang) {
        this.chang = chang;
    }
    public int getKuan() {
        return kuan;
    }
    public void setKuan(int kuan) {
        this.kuan = kuan;
    }
    @Override
    public void CalculateArea() {
        System.out.println("矩形的面积是"+chang*kuan);
    }
}
class Ji{
    public static void main(String[] args){
       Area m=new MyCircle(5);
       // MyCircle m=new MyCircle(5);//为啥这个也可以实现接口的方法  他和接口有啥区别
        m.CalculateArea();
        Area m2=new MyRectangle(3,4);
       // MyRectangle m2=new MyRectangle(3,4);
        m2.CalculateArea();
    }
}
 

  • 写回答

3条回答 默认 最新

  • 404警告 2021-07-23 17:49
    关注

    因为他本身就是Area 接口的实现类 而接口不能被实例化只能new他的实现类 而MyCircle作为他的实现类创建出来使用他的方法有他的功能很正常

    评论

报告相同问题?

问题事件

  • 创建了问题 7月23日

悬赏问题

  • ¥30 matlab求解刃位错方程
  • ¥15 python实现CAD识图
  • ¥15 如何实现在renpy中创建并应用不同大小尺寸对话框?
  • ¥15 table表格有一列是固定列 滑动到最下面时 固定的那一列有几行没显示出来
  • ¥20 单细胞数据注释时报错
  • ¥20 dify工作流分析sql查询结果
  • ¥15 vscode编译ros找不到头文件,cmake.list文件出问题,如何解决?(语言-c++|操作系统-linux)
  • ¥15 通过AT指令控制esp8266发送信息
  • ¥15 有哪些AI工具提供可以通过代码上传EXCEL文件的API接口,并反馈分析结果
  • ¥15 二维装箱算法、矩形排列算法(相关搜索:二维装箱)