从另一个类调用方法而不是从类中调用方法会产生多少开销?

时间:2016-04-13 17:07:35

标签: java

我最近了解到,编译java程序后,类/方法是静态链接的,方法名称在运行时没有影响。

我的问题是:通过从另一个类调用方法而不是从同一个类调用方法来创建多少开销?

我有一个Bounds类,它是我自己的矩形版本。我有另一个类,它基本上是一个包含绘图信息的实体。目前我在这个Entity类中有一个方法,它从类自身的点列表中生成当前的Bounds,并返回新的边界。但是,我想将此方法移动到Bounds类中,只需将点列表作为参数,然后返回Bounds。我只想将此方法移动到Bounds类中以清理Entity类,因为我不认为此方法应该属于此处。我必须在某种方法中更新我的代码。我的实体类没有保留边界对象,因为我必须使用当前的转换矩阵更新每个方法的边界,并且我不想在每次只需要鼠标选择时生成它。我的猜测是本地方法会更快。

Bound b = getBounds(); // This would have to change to the below

Bound b = Bounds.getBounds(this.listOfPoints); // This is a List<Point>

1 个答案:

答案 0 :(得分:0)

Java是一种面向对象的语言。这意味着你作为一个程序员应该以这样的方式编写你的代码,即方法位于它们所属的位置(即它们有意义的地方)在99%的情况下,性能不应该是一个考虑因素。 Java编译器和JVM具有非常强大和智能的性能优化器。依靠他们来完成他们的工作,并以一种可自我解释的方式编写代码。当您或其他人需要维护/修改您的代码时,这将节省您的时间。