美文网首页
《Core Java》笔记:隐式参数与显式参数

《Core Java》笔记:隐式参数与显式参数

作者: 挺婷Tina | 来源:发表于2018-10-11 22:40 被阅读0次

    方法用于操作对象以及它们的实例域。

    其中每个方法都有显式参数以及隐式参数,隐式参数就是当前方法的对象,就是this;
    这里,Java跟C++的方法有些差别:

    • C++ 的类方法都是放在类外面,而Java的会放在类里面;
    • 但对于C++,放在类里面的方法,表明该方法是inline函数;

    看到这里,我再继续看了下inline,它到底是解决什么问题的呢?
    这里是网上找到的解释:
    inline用来定义一个类的内联函数,引入它的主要原因是用它替代C中形式的宏定义

    我们知道C中的宏定义主要就是一个内容替换,它在形式和使用上跟函数很相似,但效率更高,因为它用预处理器生成,不需要代码生成,参数压栈之类的;

    但宏定义的坏处就是无法进行参数类型检查,返回值也不能被强转成合适的类型,带有隐患和局限性。而且对于C++这种有类的访问控制,全局性的宏定义就更加不适合

    相比之下inline同样能实现宏定义的功能,也是直接替换,而且在方法的实现上定义,能够进行函数调用时的参数类型检查等等。而且它通常用于类成员函数的实现定义,能很好地使用类里的成员;

    相关文章

      网友评论

          本文标题:《Core Java》笔记:隐式参数与显式参数

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