编译器是否为公共成员函数和私有成员函数分配了不同的内存区域,或者它们分配在同一个内存区域中?以及它们的确切分配位置(即堆、堆栈...)?
我的意思是说 OOP 概念就像成员函数的滥用仅在编写代码时受到限制,然后......我的意思是在编译为字节码之后,内存表示没有什么不同,如果我在某个地方错了,请纠正我..
类/方法或任何其他meta-data
由 JVM 存储在称为:非堆内存的区域中
包括实例/类成员变量在内的对象在运行时存储在堆上。
其他两个答案的混淆增加了,因为当函数在一个框架中运行时方法成员存储在堆栈中,一旦方法完成,该框架就会被销毁。
Java中的成员函数存储在堆栈中
实例变量,对象存储在Heap中
局部变量存储在堆栈中