美文网首页java
接口,抽象

接口,抽象

作者: _narcissus | 来源:发表于2018-12-03 21:56 被阅读4次
  • interface(接口)和 abstract(抽象)都是为了做一件事,那就是将方法与方法体(实现)分离。有什么实际意义,分工合作吧。
  • 但是又有自己的特点,不然就叫一个名得了。
public abstract class  Calculate {
    double num1;
    double num2;
    public abstract void add(double num1,double num2);
    public abstract void sub(double num1,double num2);
    public abstract void mul(double num1,double num2);
    public abstract void div(double num1,double num2);
    public abstract void mod(double num1,double num2);
}
public  class Method extends Calculate{
    public void add(double num1,double num2) {
        System.out.println(num1+num2);
    }
    public void sub(double num1,double num2){
        System.out.println(num1-num2);
    }
    public void mul(double num1,double num2){
        System.out.println(num1*num2);
    }
    public void div(double num1,double num2){
        System.out.println(num1/num2);
    }
    public void mod(double num1,double num2){
        System.out.println(num1%num2);
    }
}

抽象类不能实例化为对象,但是被继承后就好说话了,继承后的类就和普通的类一样了,可以实例化。然后调用这些方法

import java.util.Scanner;
public class Cal {
    public static void main(String[] args) {
        Method method = new Method();
        double num1=0,num2=0;
        int choose=1;
        for(;;) {
            try {
                Scanner scanner = new Scanner(System.in);
                System.out.println("输入第一个数值");
                num1 = scanner.nextDouble();
                System.out.println("输入第二个数值");
                num2 = scanner.nextDouble();
                System.out.println("1.+ 2.- 3.* 4./ 5%");
                choose = scanner.nextInt();
            } catch (Exception e) {
                System.out.println("输入不正确");
            }
            switch (choose) {
                case 1:
                    method.add(num1, num2);
                    break;
                case 2:
                    method.sub(num1, num2);
                    break;
                case 3:
                    method.mul(num1, num2);
                    break;
                case 4:
                    method.div(num1, num2);
                    break;
                case 5:
                    method.mod(num1, num2);
                    break;
            }
        }
}
}

接口?差不多。区别就这么点

interface Calculate {方法名}
public class Method implements Calculate{方法体}

不过,抽象类里还可以有自己的方法体,而接口就纯接口,抽象类只能被一个继承,而接口可以被很多去实现。

快下课了,回去了!

相关文章

  • 5.5-全栈Java笔记:接口的定义和使用

    接口interface 接口的作用 为什么需要接口?接口和抽象类的区别? 接口就是比“抽象类”还“抽象”的“抽象类...

  • 工厂方法模式

    抽象工厂类或接口 抽象工厂类或接口实现类 抽象产品类或接口 抽象产品类或接口实现类 使用

  • 抽象工厂模式

    抽象工厂类或接口 抽象工厂类或接口实现类 抽象产品类或接口 抽象产品类或接口实现类 使用

  • JAVA 核心笔记 || [9.1] 抽象类与接口的区别

    抽象类与接口的区别 接口只能有抽象方法, 抽象类可以有抽象方法和非抽象方法. 接口只能有静态变量和最终变量, 抽象...

  • Android 面试集合(三)

    01、抽象类和接口的区别 接口是对动作的抽象,抽象类是对根源的抽象。 抽象类要被子类继承,接口要被子类实现。 抽象...

  • 建造者模式

    建造者抽象类或接口 建造者抽象类或接口实现类 产品抽象类或接口 产品抽象类或接口实现类 使用

  • Java 接口 抽象类 枚举

    接口 使用接口对行为进行抽象 接口: 抽象类 抽象类是用来捕捉子类的通用特性的,包括属性及行为。 抽象类: 抽象类...

  • 命令模式

    命令接收者接口或抽象定义 命令接收者接口或抽象定义实现类 命令接口或抽象定义 命令接口或抽象定义实现类 命令调用者...

  • 接口,抽象

    interface(接口)和 abstract(抽象)都是为了做一件事,那就是将方法与方法体(实现)分离。有什么实...

  • 抽象、接口

    1.抽象类与抽象方法2.接口 1.抽象类与抽象方法 1.1 抽象方法使用abstract修饰的方法,没有方法体,只...

网友评论

    本文标题:接口,抽象

    本文链接:https://www.haomeiwen.com/subject/fggucqtx.html