JAVA静态方法和非静态方法的区别和实例

 我来答
哈尔滨市南岗区爱尚职
2017-05-15 · 做品质教育,用事实说话
哈尔滨市南岗区爱尚职
爱尚实训成立于2010年,总部设立在软件外包名城—大连,并在哈尔滨和沈阳设有分校。爱尚实训专注于IT行业精英的培养,打造高端IT技能实训品牌。
向TA提问
展开全部
  1. 加载时机不同:静态是随着类的加载而加载的,非静态是随这对象的加载而加载的,即静态的产生时机要早于非静态的产生时机。因此我们说,静态方法只能访问静态对象,因为产生时机相同,而非静态方法既能访问静态变量,也能访问非静态变量。

  2. 存储区域不同:静态方法存储在静态方法区,非静态方法存储在普通方法区

  3. 销毁时间不同:静态随这类的加载而存在,加载到内存后,属于应用级别的,会常驻内存,除非jvm关闭或重启电脑,从而清空内存:),而非静态方法是属于对象的,实例化后才会分配内存,必须通过类的实例来引用。不会常驻内存,当实例对象被JVM 回收之后,也跟着消失。 

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式