美文网首页
客官你好,花一首歌的时间了解下java继承

客官你好,花一首歌的时间了解下java继承

作者: 何甜甜在吗 | 来源:发表于2018-11-16 12:39 被阅读0次

写pojo层时,因为数据库中的每张表都会有id、gmt_create和gmt_modified字段,那么对应到每个pojo类上都会需要有id、gmtCreate和gmtModified字段,这样就会造成很多pojo类都会出现重复字段,于是想到继承来解决重复字段的问题

抽象类:SuperPO.java

@Data
@EqualsAndHashCode(callSuper = true)
public abstract class SuperPO extends Model<SuperPO> {
    /**
     * 主键
     * */
    @TableId(value="id",type= IdType.AUTO)
    private Long id;

    /**
     * 创建时间
     */
    @TableField(value = "gmt_create")
    private Date gmtCreate;

    /**
     * 修改时间
     */
    @TableField(value = "gmt_modified", update = "now()")
    private Date gmtModified;

    @Override
    protected Serializable pkVal() {
        return id;
    }
}

子类:Commodity.java

@Data
@TableName("commodity")
@EqualsAndHashCode(callSuper = true)
public class Commodity extends SuperPO {
    /**
     * 商品所在店铺.
     */
    @TableField("shop_id")
    private Long shopId;

    /**
     * 商品名称.
     */
    @TableField("name")
    private String name;

    /**
     * 商品描述.
     */
    @TableField("description")
    private String description;

    /**
     * 商品价格.
     */
    @TableField("price")
    private Integer price;
}

可以看出使用了继承,Commodity.java类很简洁

使用继承的优缺点

  • 优点:
    • 代码冗余度低、可复用性强
    • 易维护
  • 缺点:
    • 独立性差,依赖父类,耦合性强

使用继承需要的注意点

  • 子类不能继承父类的private的成员变量,只能继承publicprotected,但是能通过get方法访问到父类的private成员变量
  • 子类不能继承父类的private的成员方法,只能继承publicprotected
  • 若子类可以继承父类成员变量,并且子类中出现了同名称的成员变量,就会发生隐藏,即子类的成员变量会屏蔽掉父类的同名成员变量。如果要在子类中访问父类中同名成员变量,需要使用super关键字来进行引用
  • 若子类可以继承父类成员方法,并且子类中出现了同名称的成员方法,就会发生覆盖,即子类的成员方法会覆盖掉父类的同名成员方法。如果要在子类中访问父类中同名成员方法,需要使用super关键字来进行引用

相关文章

  • 客官你好,花一首歌的时间了解下java继承

    写pojo层时,因为数据库中的每张表都会有id、gmt_create和gmt_modified字段,那么对应到每个...

  • java 中Thread

    首先了解下线程的状态 继承方式实现 Ruannable方式(推荐使用,因为java是单继承,这种方式还可以有父类)...

  • Java treemap的使用

    1.首先让我们直观的感受一下java中的treemap 再了解下treemap在java类中的继承情况 原文地址:...

  • 超赞猫杯

    客官你好赞呀,我都很喜欢

  • Java集合--Set(基础)

    1.Set 上一篇,我们介绍Java中的List集合。本篇,让我们继续学习,来了解下Set集合; Set继承于Co...

  • Java中的Set总结

    1.Set 上一篇,我们介绍Java中的List集合。本篇,让我们继续学习,来了解下Set集合; Set继承于Co...

  • 感恩日记Day164#歌曲#时间观

    1、歌曲 突然想到一首歌《客官不可以》,客官客官你不可以……记得高三的时候,当时很喜欢听了一阵子,但因为节奏太快跟...

  • 继承

    继承:1:实现了代码的复用 2:使类与类之间产生了父子关系 java继承的特点: 1:java继承和OC是单继承 ...

  • Java继承

    一、Java继承详解 Java继承目录:1.为什么要”继承“?2.继承的类型2.1 单继承2.2 多重继承2.3 ...

  • java中的static关键字

    又到了读代码了解java知识的时间了。今天我们来了解下java中的static关键字,来看看它的作用和一些相关原理...

网友评论

      本文标题:客官你好,花一首歌的时间了解下java继承

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