代码规范之子类重写抽象父类中的抽象方法

一般是一个基类BaseActivity,里面有未实现方法initView,initController等等,并且这些方法在BaseActivity中的生命周期(Activity一定会走的生命回调,onCreate,OnResume等等)中使用;那么在子类Activity中重写这些方法即可,无需在子类中使用这些方法,既会被父类自动调用

 

 

 

 

 

 

父类:

首先,父类有一个抽象的方法,并且在自身的其他方法中调用了

public abstract class Baba{

public abstract String say();

public void dosomething(){

say();

}

}

父类Baba,有一个say的抽象方法没有实现,并且在dosomething中调用了。如果直接调用dosomething方法会报错;

 

 

子类:

public class Erzi extends Baba{

public String say(){

return "hahaha";

}

}

 

然后在另一个类中调用父类的dosomething方法,实际上是实现了子类中自己实现的say方法;

Erzi erzi=new Erzi();

erzi.dosomething();

 

 

 

一般用于父类的抽象方法或(方法)由子类来实现,如果这个方法是有返回值的,就可以将返回的值传给父类中的方法(一般用法);

还有一种可能:父类的抽象方法(方法)由子类来实现,这个方法是没有返回值的,就代表父类只想让子类进行某些操作而不是返回值给父类使用;

 

 

 

实战场景:有一个界面,大部分的框架都是相同的,但是内容不一样;父类内容相同的部分可以在父类内部实现,内容不同但是框架相同可以抽象出来交给子类去实现,子类将不同内容但是相同框架的部分返回给父类,这样父类就可以将这些内容作为自己的东西进行整体的构建;MobileFirewallFragment,FirewallListFragment,BaseFragment,详情请看这三个类中的子类和父类的方法实现;

 

 

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值