加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 抽象方法没有体?

发布时间:2020-12-15 05:01:32 所属栏目:Java 来源:网络整理
导读:我是 Java新手(现在读书4个月了).所以我的问题可能看起来太简单了.我的理解是,抽象方法没有正文,也无法提供实现 那么这是如何工作的呢? public abstract void fillRect (int x,int y,with,height); 我没有清楚地指出这个问题.我们有抽象的方法.如果我不提供
我是 Java新手(现在读书4个月了).所以我的问题可能看起来太简单了.我的理解是,抽象方法没有正文,也无法提供实现

那么这是如何工作的呢?

public abstract void fillRect (int x,int y,with,height);

我没有清楚地指出这个问题.我们有抽象的方法.如果我不提供正文,只是参数,为什么它会绘制一个矩形.

例如

public void paint (Graphics g) {

g.fillRect (5,5,30,30);

}

解决方法

你需要知道两件事

-declaration:方法的原型或结构.例如:

public int add(int a,int b);

-definition:方法的实现

public int add(int a,int b) {
        this.a = a;
        this.b = b;
        return a + b;
    }

现在抽象方法可以有一个声明,即结构或原型.但它没有定义.定义应该在扩展包含抽象方法的类的类中完成:

class A {
        public abstract int add(int a,int b); //just declaration- no body
    }
    class B extends A {
        /*must override add() method because it is abstract in class A i.e class B must have a body or definition of add()*/ 
        int a,b;
        public int add(int a,int b) {
            this.a = a;
            this.b = b;
            return a + b;
        }
    }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读