java - 私有(private)和公共(public)访问修饰符是否会影响性能?

标签 java c++ class oop member

我认为我们必须在成员变量上使用正确的修饰符才能实现模块化,但对类成员的访问修饰符对应用程序性能的影响感到好奇。

如果我的程序很小,那么如果我使用所有的成员变量public呢?

最佳答案

在 C++ 和 Java 中,修饰符本身并不直接影响性能:它在编译阶段存在以强制分离关注点,但在编译的(对象)代码中没有修饰符的踪迹。但是,使用访问器和修改器函数来引用成员变量在理论上会造成一些轻微的性能损失。即使那样,在 C++ 中,这些调用也可以由编译器内联,从而完全消除损失。 @Peter Lawrey 在评论中提到类似的优化可用于 Java。

因此,使用任何导致更简洁设计的东西,因为任何性能影响都是有争议的。

关于java - 私有(private)和公共(public)访问修饰符是否会影响性能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32334291/

相关文章:

c++ - 无法从类数组访问数组

c++ - char* 和 char[] 数组错误

c++ - 运算符<<无法访问类的私有(private)整数

HTML <a> 标签比指定宽度宽

Java 拆分与数学表达式

java - 具有 ActionListener 和 DocumentListener 的 JTextField

c++ - 特征类是如何工作的,它们是做什么的?

已给定字符串中的 Java 占位符

java - 映射器是适配器模式的一个版本吗

android - SGS4 安卓 4.4.2 - OGL ES2 崩溃