开发者社区 问答 正文

RuntimeException源码

throw new RuntimeException("Stub!");
几乎所有的android源码实现都有throw new RuntimeException("Stub!");这么一段代码,
我在自学android,发现看不太懂,举个简单的例子
`
public boolean startActivityIfNeeded(Intent intent, int requestCode) {
throw new RuntimeException("Stub!");
}
`
这个方法的返回值为boolean,是怎么返回的呢?

展开
收起
爵霸 2016-03-20 09:53:42 2998 分享 版权
1 条回答
写回答
取消 提交回答
  • Stub顾名思义,就是桩的意思。表示这个方法先写上,但是没有实际的功能。这个函数也不会返回,因为会引发异常。

    我们有两种实现软件的方法,一个是先进行顶层设计,然后再具体实现。另一个是先设计细节,然后把它们组合在一起成为整体。桩代码在软件设计的时候很常见,它就是第一种设计方式的体现,函数调用先写出来,同时编写一个桩,这个桩只是为了让编译通过。
    丢出异常的目的是当实际要调用它的时候,防止设计者遗忘,丢出异常很明显提醒调用者,这个代码没有实现。

    2019-07-17 19:08:42
    赞同 展开评论
问答分类:
问答地址: