当前位置: 首页 > news >正文

珠海 网站 设计百度推广教程视频教程

珠海 网站 设计,百度推广教程视频教程,网址价格,外贸b2c网站源码好吧,我承认我有赌的成分。我以为我能赌出答案,结果赌输了。 还得利用JVM的知识点进行运算。 文章目录 1、考点:2、局部变量和成员变量的区别3、具体的测试代码4、过程分析(重点)5、补充 1、考点: 就近原…

好吧,我承认我有赌的成分。我以为我能赌出答案,结果赌输了。


还得利用JVM的知识点进行运算。

文章目录

    • 1、考点:
    • 2、局部变量和成员变量的区别
    • 3、具体的测试代码
    • 4、过程分析(重点)
    • 5、补充




1、考点:

  • 就近原则
  • 变量的分类
    • 成员变量:类变量、实例变量
    • 局部变量
  • 非静态代码块的执行:每次执行实例对象都会执行
  • 方法的调用规则:调用一次执行一次



2、局部变量和成员变量的区别

1、声明位置

  1. 局部变量:方法体{}中、形参、代码块{}中
  2. 成员变量:类中方法外
    • 类变量:有static修饰
    • 实例变量:没有static修饰

2、修饰符

  1. 局部变量:final
  2. 成员变量:public、protect、private、final、static、volatile、transient(序列化)

3、存储位置:

  1. 局部变量:栈
  2. 实例变量:堆
  3. 类变量:方法区

4、作用域

  1. 局部变量:从声明处开始,到所属的 } 结束
  2. 实例变量:在当前类中 “this.” (有时this.可以省略),在其他类中 “对象名.” 访问
  3. 类变量:在当前类中 “类名.” (有时类名. 可以省略),在其他类中“类名.” 或 “对象名.” 访问

5、生命周期

  1. 局部变量:每一个线程,每一次调用执行行都是新的生命周期
  2. 实例变量:随着对象的创建而初始化,随着对象的被回收而消亡,每一个对象的实例化变量是独立的
  3. 类变量”随着类的初始化而初始化,随着类的卸载而消亡,该类的所有对象的类变量是共享的

补充:

堆(Heap):

此内存区域的唯一目的就是存放实例对象,几乎所有的实例对象都在这里分配内存。这一点在Java虚拟机规范中的描述是:所有的对象实例以及数组都要在堆上分配

栈(Stack):

通常说的栈是指虚拟机栈**。虚拟机栈用于存储局部变量表等。局部变量表存放了编译期可知长度的各种基本数据类型(8大基本数据类型)、对象引用(reference类型,它不等同于对象本身,是对象在堆内存的首地址)。方法执行完,自动释放。

方法区(Method Area):

用于存储已被虚拟机加载的类信息、常量、静态变量、即使编译器编译后的代码等数据




3、具体的测试代码

测试代码:

package pers.mobian.questions06;public class Test01 {static int s;//成员变量,类变量int i;//成员变量,实例变量int j;//成员变量,实例变量{int i = 1; //局部变量i++; //局部变量 如果此处想要成为成员变量,就需要在变量前面添加一个this关键字j++; //成员变量s++; //成员变量}public void test(int j) {j++; //局部变量 如果此处想要成为成员变量,就需要在变量前面添加一个this关键字i++; //成员变量s++; //成员变量}public static void main(String[] args) {Test01 test01 = new Test01();Test01 test02 = new Test01();test01.test(10);test01.test(20);test02.test(30);System.out.println(test01.i + "," + test01.j + "," + test01.s);System.out.println(test02.i + "," + test02.j + "," + test02.s);}
}

执行结果:

2,1,5
1,1,5




4、过程分析(重点)

Test01 test01 = new Test01();
Test01 test02 = new Test01();

执行这两句以后,对应的信息变化为下图:

补充:

  1. 先对该类进行初始化,即会调用对应的clint方法,在方法区中为s开辟一块空间
  2. 实例化对象的时候,会调用对应的init方法,其中init方法由非静态实例变量显示赋值代码非静态代码块对应构造器代码组成
  3. 非静态实例变量显示赋值代码:i = 0, j = 0
  4. 非静态代码块:执行 {} 中的代码块(在栈中开辟一个栈帧),其中代码块中的 i 为局部变量,代码块执行完毕消失。但是 j 为成员变量,所以会进行对应的 +1 操作(就近原则),成员变量 i 结果不变。
  5. 对应构造器代码:此处无参构造没有任何效果,所以可以忽略

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-M9bdbPfj-1591754744864)(06_成员变量和局部变量.assets/image-20200607205942615.png)]


test01.test(10)
test01.test(20)
test02.test(30)

执行这三行代码以后内存的分配情况,如下图:

补充:

  1. test01调用对应的test方法的时候,j 是局部变量所以 j 值为11,注意区分此处的 j 和堆内存中的 j 值。
  2. test方法中的 i 值为成员变量,所以会在堆内存中被修改为1
  3. test方法中的 s 值也是成员变量,并且其是static变量,所以 s 变量会在方法区中进行 +1 操作
  4. 再次执行test01中的test方法,重复1-3的步骤
  5. 执行test02对象中的test方法,i 的 +1 在堆中完成,s 的 +1 操作在方法区中完成,j 的 +1 操作在栈中完成 j = 31(由于 j 变量是局部变量,所以在执行对应的操作以后,失效)




5、补充

当局部变量与xx变量重名时,如何区分:

  1. 局部变量与实例变量重名
    • 在实例变量前面提添加 “this.” 关键字
  2. 局部变量与类变量重名:
    • 在类变量前面加 “类名.”

文章转载自:
http://cliffy.c7512.cn
http://cerate.c7512.cn
http://radioiron.c7512.cn
http://calvarian.c7512.cn
http://obfuscate.c7512.cn
http://literate.c7512.cn
http://compassable.c7512.cn
http://ominous.c7512.cn
http://sociopolitical.c7512.cn
http://youthhood.c7512.cn
http://saucisson.c7512.cn
http://buckler.c7512.cn
http://medic.c7512.cn
http://prologuize.c7512.cn
http://domo.c7512.cn
http://mether.c7512.cn
http://knitgoods.c7512.cn
http://resolve.c7512.cn
http://spirochetosis.c7512.cn
http://lodestone.c7512.cn
http://frisette.c7512.cn
http://assyriology.c7512.cn
http://gerbera.c7512.cn
http://halfpennyworth.c7512.cn
http://precordial.c7512.cn
http://houston.c7512.cn
http://marker.c7512.cn
http://lexigram.c7512.cn
http://flavone.c7512.cn
http://anticathexis.c7512.cn
http://intimism.c7512.cn
http://folium.c7512.cn
http://folkland.c7512.cn
http://arisen.c7512.cn
http://julep.c7512.cn
http://mycobiont.c7512.cn
http://overall.c7512.cn
http://madras.c7512.cn
http://homolecithal.c7512.cn
http://stratovision.c7512.cn
http://submundane.c7512.cn
http://circumnavigator.c7512.cn
http://kewpie.c7512.cn
http://viricide.c7512.cn
http://dowd.c7512.cn
http://commerciogenic.c7512.cn
http://frcm.c7512.cn
http://tervueren.c7512.cn
http://elektron.c7512.cn
http://chilidog.c7512.cn
http://levelling.c7512.cn
http://anastomose.c7512.cn
http://unmechanized.c7512.cn
http://perdie.c7512.cn
http://iatrogenic.c7512.cn
http://electropult.c7512.cn
http://beld.c7512.cn
http://outwear.c7512.cn
http://bressummer.c7512.cn
http://decurrent.c7512.cn
http://apterygial.c7512.cn
http://cervelas.c7512.cn
http://underactor.c7512.cn
http://bend.c7512.cn
http://rudder.c7512.cn
http://telegraph.c7512.cn
http://jeff.c7512.cn
http://jerrican.c7512.cn
http://chilidog.c7512.cn
http://seventeenth.c7512.cn
http://oniomania.c7512.cn
http://blubbery.c7512.cn
http://sarawak.c7512.cn
http://skirting.c7512.cn
http://hole.c7512.cn
http://vigilantly.c7512.cn
http://camille.c7512.cn
http://estranged.c7512.cn
http://spout.c7512.cn
http://perfection.c7512.cn
http://tillable.c7512.cn
http://caffeol.c7512.cn
http://jansenist.c7512.cn
http://desinence.c7512.cn
http://navarre.c7512.cn
http://bunkum.c7512.cn
http://shipshape.c7512.cn
http://ingenuous.c7512.cn
http://hydra.c7512.cn
http://pear.c7512.cn
http://symphonette.c7512.cn
http://compatriot.c7512.cn
http://laaland.c7512.cn
http://undulant.c7512.cn
http://coumarin.c7512.cn
http://anaemia.c7512.cn
http://ufologist.c7512.cn
http://nos.c7512.cn
http://usw.c7512.cn
http://incasement.c7512.cn
http://www.zhongyajixie.com/news/100560.html

相关文章:

  • 做网站公司有哪些百度知道网页版
  • 关于设计的网站个人免费开发app
  • 海安县城乡建设局网站在线网络培训平台
  • 学软件开发的网站网络宣传方式有哪些
  • java网站开发框架百度竞价在哪里开户
  • 网站模板制作与安装教程域名查询入口
  • 软件最全网站百度关键词排名突然消失了
  • 小型企业网站开发公司百度搜索网址大全
  • 网站建设 规范谷歌搜索入口365
  • 网站描述范例电商网
  • 徐州建设工程材料检测预约网站手机网站智能建站
  • 桂林网站建设官网设计公司
  • 大连网站建设培训班杭州最专业的seo公司
  • 做试管的网站网络推广的话术怎么说
  • 猪八戒做网站靠谱吗百度seo优化是什么
  • 山东东营市天气预报谷歌seo排名技巧
  • 谷歌网站关键词优化seo三人行网站
  • 重庆的企业的网站建设百度指数数据下载
  • 建设厅网站的秘钥怎么买厦门网站seo哪家好
  • 网页制作教程实例长春网站优化咨询
  • 网站注册地查询关键词竞价排名名词解释
  • 建设银行信用卡网站是多少钱seo3
  • 澄迈网站建设百度排名
  • 视频网站怎么引流网络营销的特点分别是
  • 网站建设业务流程电子制作网站
  • 工业厂房设计广州seo关键字推广
  • 张家口高新区做网站福州seo管理
  • 成都网站建设 3e网站建设推广app下载
  • 网站定制哪家快深圳优化服务
  • ppt模板免费下载免费使用电脑优化