java抽象方法

   java抽象方法用abstract来进行声明,抽象类是一种介于普通类和接口之间的类,它可以包含抽象方法、非抽象方法、构造方法、静态方法和成员变量,抽象类可以包含具体实现的方法,这些方法可以提供通用的行为或默认的实现,供其子类直接使用。子类可以选择性地重写这些方法,以覆盖父类提供的默认实现;抽象方法用于强制要求子类提供方法的实现,如果一个类继承了抽象类,它必须实现抽象类中的所有抽象方法,除非声明该类也是抽象类;

    在java中接口是是一种抽象类型并不是一个类,可以从一个类可以实现多个接口而类只能继承一个可以看出,接口中方法都是抽象方法,如果一个类实现了一个接口,则必须实现该接口所有抽象方法,除非是抽象类,

abstract class Shape {
    String color;

    public Shape(String color) {
        this.color = color;
    }

    // 抽象方法
    abstract double area();

    // 具体实现的方法
    public void display() {
        System.out.println("This is a " + color + " shape.");
    }
}

class Circle extends Shape {
    double radius;

    public Circle(String color, double radius) {
        super(color);
        this.radius = radius;
    }

    @Override
    double area() {
        return Math.PI * radius * radius;
    }
}

public class Main {
    public static void main(String[] args) {
        Circle circle = new Circle("red", 5.0);
        circle.display();
        System.out.println("Area: " + circle.area());
    }
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值