浅谈Java面向对象的概念

你真的知道吗?
什么是类?
什么是对象?
什么是继承?
什么是接口?
什么是包装?

什么是类

在java语言中用 class 类名 的方式来表示一个类,那么类到底是什么呢?JDK文档定义的是“类是创建对象的蓝图或原型”。大白话就是 :类就是对象的一个模板。打个比方:人 属于一个类,代表人类,那么人类这个模板包含什么呢?姓名、性别、年龄、鼻子、眼睛、耳朵、四肢 等等这些属性,同时还包含 能力这个方法;这些东西统称为人类。我们就写出了人类这个class

package com.sample;

/**
 * 人类
 */
public class Person {
    private String name; // 姓名
    private String sex; // 性别
    private Integer age; // 年龄

    public void getAbility(String ability){
        System.out.println(name + ": 年龄 " + age + ", 性别 " + sex + ", 具备 " + ability + " 等这些能力");
    }

    public Person() {
    }

    public Person(String name, String sex, Integer age) {
        this.name = name;
        this.sex = sex;
        this.age = age;
    }

}

什么是对象

既然类是一套模板,那么接着上面的人类模板,对象就是根据这个人类模板创建的真实对象了,在java语言中 用 **new、Class.newInstance() ** 等 创建对象,比如:现实生活中的 张三、李四、王五 等等,这些都是真实的人类对象。

public static void main(String[] args){
    Person zhangsan = new Person("张三","男",11);
    zhangsan.getAbility("阅读、写作、英语口语、跑步");

    Person lisi = new Person("李四","男",22);
    lisi.getAbility("打球、跑步、唱歌");

    Person wangwu = new Person("王五","女",33);
    wangwu.getAbility("唱歌、阅读、带孩子、工作");
}
image.png

什么是继承

看到继承两个字,在现实生活中,我们经常听说:xx去了,xx的财产谁来继承,同时xx的继承者还有自己的资产 等。在Java中,继承的定义是 “不同种类的物体通常具有一定的共同点”,用extends来继承一个父类。比如:张三这个人类,不仅具有人类的特征,还有他自己特有的特征。


image.png
package com.sample;

public class ZhangSanPerson extends Person {
    // 编写张三的特有信息
}

什么是接口

接口也可以理解为是个按钮,连接外界 与 按钮另一侧的接口。如果我想开灯,那么按钮就作为 我 和 按钮另一端的链接,达到开灯的效果


image.png
package com.sample;

/**
 * 按钮接口
 */
public interface ButtonInterface {
    /**
     * 开灯
     */
    void turnOn();
}
package com.sample;


public class ButtonOperation implements ButtonInterface {
    @Override
    public void turnOn() {
        System.out.println("开灯");
    }

    public static void main(String[] args){
        ButtonInterface button = new ButtonOperation();
        button.turnOn();
    }
}

什么是包装

这个世界上除了人类这个物种,还有动物、植物 等等,因此要用package包装起来,这样人类 就不会放到 动物 或 植物那类。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 11,112评论 6 13
  • 1 面向对象No6 面向对象 OO Object Oriented 编程时以对象为单元,封装数据和逻辑,以此提...
    征程_Journey阅读 1,178评论 0 2
  • 到了冬季,羽绒服和双面尼大量到店,这些客单价相对来说高一点,如何让顾客心甘情愿的去买单?介绍衣服款式的时候,要...
    潍坊泰华DDM店刘云阅读 207评论 0 0
  • Sometimes,I feel strange to myself. I think it is not the...
    hexunmiranda阅读 333评论 0 0
  • 突然意识到现实版权力的游戏,那是一种战斗一种厮杀一场心机者的博弈。 学会尊重你身边的每一个人。 认真,平等去看待每...
    深夜失眠症阅读 205评论 0 0