记录最近在项目设计中遇到的一个小问题。前提:有这样两个POJO类,它们都可以通过链式调用的方式来设置其属性值,其中一个类继承了另一个类。问题:通过链式调用,子类对象访问父类方法后,如何使返回对象仍是子类对象,仍然可以继续链式调用子类的方法?结论:子类重写父类中需要被调用的方法。在 ...
记录最近在项目设计中遇到的一个小问题。
前提:有这样两个POJO类,它们都可以通过链式调用的方式来设置其属性值,其中一个类继承了另一个类。
问题:通过链式调用,子类对象访问父类方法后,如何使返回对象仍是子类对象,仍然可以继续链式调用子类的方法?
结论:子类重写父类中需要被调用的方法。在子类重写的方法中,首先通过super关键字调用父类方法,
然后通过return this语句返回子类对象。
为了更具体、更形象的描述问题和解决办法,上示例代码。
BaseOption、AppearanceOption 是两个实现了链式调用的POJO类,其中AppearanceOption 继承自BaseOption。
1 package com.practice.option; 2 3 public class BaseOption { 4 5 private String id; 6 7 private String name; 8 9 public String getId() {10 return id;11 }12 13 public String getName() {14 return name;15 }16 17 public BaseOption setId(String id) {18 this.id = id;19 return this;20 }21 22 public BaseOption setName(String name) {23 this.name = name;24 return this;25 }26 27 }
海外公司注册、海外银行开户、跨境平台代入驻、VAT、EPR等知识和在线办理:https://www.xlkjsw.com
原标题:【Java】子类的链式调用
关键词:JAVA
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。