码迷,mamicode.com
首页 > 编程语言 > 详细

Java内联函数

时间:2017-06-03 20:59:16      阅读:172      评论:0      收藏:0      [点我收藏+]

标签:eth   str   设计   子类   tracking   public   pos   使用   rdf   

1.内联函数就是指函数在被调用的地方直接展开,编译器在调用时不用像一般函数那样,參数压栈,返回时參数出栈以及资源释放等,这样提高了程序运行速度。

2.Java语言中有一个keywordfinal来指明那个函数是内联的,例:

public final void doSomething() {
  // to do something
}

        该方法在被调用时。会在调用处直接展开使用,从而提高程序运行速度。

此外finalkeyword另一个作用,防止doSomething方法在子类中被覆盖。假设你希望doSomething是一个终于行为的话。那它应该被设计成final。

        内联不一定好。当被指定为内联的方法体非常大时,展开的开销可能就已经超过了普通函数调用调用的时间。引入了内联反而减少了性能,由于在选择这个keyword应该谨慎些,只是,在以后高版本号的JVM中,在处理内联时做出了优化,它会依据方法的规模来确定是否展开调用。

 

Java内联函数

标签:eth   str   设计   子类   tracking   public   pos   使用   rdf   

原文地址:http://www.cnblogs.com/cynchanpin/p/6938289.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!