您的足迹:首页 > Java >【java】面向对象中抽象类的使用方法

【java】面向对象中抽象类的使用方法

当客户分配了一个实际项目,而我们又不能立马把它分析的想当透彻,但可以把这个事情用简单的语言大概描述出来,也就是抽象成一个画面。我们学习了java中面向对象有继承的关系,可以把具体事情继承到抽象的这个画面上,这样不但方便完成客户的要求,还能锻炼面向对象的思想,最重要的是还能防止程序员因为马虎遗漏事先抽象好的成员函数。

可这种抽象思想怎么运用呢?怎么使用抽象类呢?下面用一个简易示例讲述一下:

有一句话:客户让一个学生去北京学习。

拿这句话为例,我们可以看出其实就是“一个学生去北京学习”,好,下面用代码说明问题。

1、首先这句话中有一个学生,学生是一个人,所以要先定义一个Person类,而且这个类肯定是抽象的,所以定义成抽象类,代码如下:

Person.java

Person {
    String name;
    int age;
    Person(String name,int age){
        this.name=name;
        this.age=age;
    }
    abstract void study();
}

2、然后到学生了,学生除了有Person的属性外还有学生特有的属性,比如学生地址address,这句话还说明了学生的行为,所以也要定义一个比如study的成员方法,代码如下:

Student.java

Student extends Person{
    String address;
    Student(String name,int age,String address){
        super(name,age);
        this.address=address;
    }
    @Override
    void study() {
        System.out.println(name+"要去("+address+")学习");
    }
}
3、最后客户的这句话就用程序完成了,是不是感觉抽象类很有用,假如不单有学生,还有工人、明星、记者等,只需在这个抽象类的基础上增加相应的同能,而且同时可以防止黑客去直接访问抽象类,因为抽象类不可以生成对象。还能防止因为自己的马虎造成遗漏代码。所以现在你可以测试一下,代码及结果如图:

注意事项:

学会用抽象的面向对象思想解决问题,是作为程序员一个良好的习惯。

本博客所有文章如无特别注明均为原创。作者:二呆复制或转载请以超链接形式注明转自 不老阁
原文地址《【java】面向对象中抽象类的使用方法》。如果此文侵犯了原作者的权益可联系我们予以删除。
如果觉得该作者的文章对你有帮助,请随意打赏给他。您的支持将鼓励作者继续创作!
觉得很赞 (0) 打赏
X
打赏本文作者方式
  • 微信
  • QQ红包
  • 支付宝

用微信扫一扫可留言
(若二维码有误可举报)

相关推荐

发表评论

路人甲 表情
Ctrl+Enter快速提交

网友评论(0)