gpt4 book ai didi

java - 使用静态方法或来自初始化对象的方法来处理 OpenGL 内容?

转载 作者:行者123 更新时间:2023-12-02 10:17:15 26 4
gpt4 key购买 nike

对 OpenGL 内容使用静态方法比初始化对象更有效吗?

因此,我没有包含一个模型数据的对象“模型”,而是只有 VAO 的 ID,因为我使用了静态方法来加载模型并返回 VAO ID。对于着色器来说也是如此:拥有一个着色器程序对象更好还是仅仅拥有着色器程序的ID(静态方法创建着色器并返回ID)更好?这种方式有什么缺点吗?它是否更有效,或者我应该只使用对象?

(LWJGL3,Java)

最佳答案

这确实取决于情况。如果这些方法做同样的事情,那么应该没有太大区别。需要数百万次方法调用才能产生真正的显着差异。然后无论如何 JIT 都会启动1

一般来说,依赖静态方法可以做三件事:

  • 它使用静态方法创建了对类的硬依赖
  • 它杀死了“多态性”,你不能只是进入并重写方法来实现不同的结果
  • 这使得测试您的代码变得相当困难

所以,长话短说:您通常倾向于非静态解决方案,以避免上述所有缺点。

关于java - 使用静态方法或来自初始化对象的方法来处理 OpenGL 内容?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54596603/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com