1.IDEA导入项目出现Error: java: 程序包javax.servlet.http不存在错误的解决办法
解决方法:打开File>Project Structure>Libraries,点击右侧加号,寻找到tomcat的lib文件夹。
2.IDEA控制台乱码问题
对象的知识:
在 Java 中,使用 new 关键字创建对象时:
-
堆内存分配: 首先在堆内存中分配一块空间,用于存储对象实例数据,并记录该对象的类信息(指向方法区的指针)。
-
栈内存分配: 然后在栈内存中创建一个变量(例如 S1),存储指向堆内存中对象实例的地址。
-
方法调用: 调用对象方法时,通过栈内存中的对象地址找到堆内存中的对象实例,再根据类信息找到方法区中对应的方法进行调用。方法执行过程中,参数和局部变量等信息会压入栈内存。
(我的理解):
new一个对象,存在栈内存中,然后被堆内存中的对象类的内存空间地址赋值,堆内存开辟一片空间以对象类的模板存储数据,并且也存了类的地址,方法区存变量和方法。new得来的对象,例如称作S1。S1的属性通过栈内存中的地址找到堆内存中的空间,找到具体属性值,赋值。S1的方法调用的时候,通过栈内存中的地址,找到堆内存中的对象,再通过堆内存中的地址找到方法区的调用的方法,然后再压到栈内存上。