前言:通过一个类,我们可以实例化多个对象,要使用new运算符来完成。new的作用就是创建对象,再堆里开辟内存空间。
首先我们了解一下粗略划分的三大内存区:
方法区内存:
在类加载时,class和static都可以被加载到该内存空间当中。可以被所有线程共享。
栈内存(局部变量):
方法代码片段执行的时候,会给该方法分配内存空间,在栈内存中压栈。可以存放基本的变量数据,和new对象的地址。
堆内存:
存放new的对象和数组,可被所有的线程共享。
例:
1.创建一个类:在Main类一栏右击鼠标->新建->java类->取名叫test2
2.新类创建完后在新类test2中写上一个公共的方法,之后可以在Main类中直接引用,这里定义Int,double,String,三个类型分别赋值,其中三个变量的值已经存到了堆内存里面
3.在Main方法里面用new创建一个对象,这样我们就可以使用test2里面的数据变量了,相当于new通过引用的方式使test2里面的Int,double,String类型可以被用到Main类中。
4.使用s.a,s.b,s.c就可以引用数据
运行一下
5.改变test2变量的值:另外除了可以输出test2中变量的值,还可以对其进行修改,改变其在堆内存的值
6.这样就可以通过引用来对数据进行查看和修改,方便java将特殊的方法放在同一个类中,使后面的代码量更少使用更加便捷。