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

西安网站建设公司西安网络公司网站建站网站建站

西安网站建设公司西安网络公司,网站建站网站建站,wordpress用qq,交互设计名词解释涉及三块区域:栈,堆,字符串常量池(jdk1.7之前在方法区,jdk1.7之后在堆中) 关于字符串常量池到底在不在堆中: jdk1.6及以前,方法区独立存在(不在堆里面)&…

涉及三块区域:栈,堆,字符串常量池(jdk1.7之前在方法区,jdk1.7之后在堆中)

 关于字符串常量池到底在不在堆中:

jdk1.6及以前,方法区独立存在(不在堆里面),字符串常量池存在方法区

jdk1.7及以后,字符串常量池被移到堆中

两种创建字符串的方式:

1.直接创建  String s="test"

只在栈中创建一个对象,堆中不创建对象

这个栈对象中保存的就是字符串的地址

 2.new的方式创建    String s=new  String("test")

总共创建两个对象,栈中创建一个对象,堆中创建一个对象

堆中对象保存的是字符串的地址,栈中对象保存的是堆中对象的地址,所以栈中对象保存的是地址的地址

 

String s1 = new String("abc")  这句代码创建了几个对象?

答案:1个或者2个  

其实就是问栈和堆里面总共有几个对象

如果堆里面已经有一个对象保存了“abc“这个对象的地址,那就只需要在栈中创建一个对象,保存堆中对象的地址即可,所以只需要创建一个对象

如果没有,那就要创建两个对象,先在堆中创建一个对象,保存字符串的地址,然后再在栈中创建一个对象,保存堆中对象的地址,总共创建两个对象

public class StringTest 
{public static void main(String[] args) {String str1 = "abc";String str2 = "abc";String str3 = new String("abc");String str4 = new String("abc");System.out.println(str1 == str2);  //trueSystem.out.println(str1 == str3);  //falseSystem.out.println(str1.equals(str3));  //trueSystem.out.println(str3 == str4);     //false}
}

第一个: str1和str2这两个对象里面存的都是字符串中的地址,所以是true

第四个:new一次就要在堆中创建一个新对象,所以str3和str4存的堆中对象地址不相等

 

 

 

http://www.yayakq.cn/news/679270/

相关文章:

  • 自己做网站买一对一专属定制方案
  • 分享站wordpress主题acfun网站设计改进
  • 触屏手机网站模板app开发
  • 福州市城乡建设发展总公司网站网店怎么开店注册
  • 兴义网站开发福建做网站
  • 网站的站点建设单页网站案例分析
  • 西宁做网站的有吗今天哈尔滨最新通知
  • 网站开发需求分析的内容朔州海外网络推广
  • 杭州建设局江门seo外包公司
  • 北京城建设计集团网站地产公司做网站维护写代码么
  • 优质采官方网站安徽外径建设集团wordpress页面顶部登录
  • 个人网站模板源码深圳保障性住房和公租房区别
  • 苏州网站建设机构网站免费建站o
  • wordpress 用什么服务器配置天津seo优化排名
  • 建设品牌网站视频播放网站开发的报告
  • 网站建设与运营在线考试个人做商机网站如何盈利
  • 万户建站网站建设花销
  • 有那个网站做外贸如何给网站绑定域名
  • 郑州建设信息网站黄石网站建设流程
  • 粮食门户网站建设方案wordpress 主页显示
  • 网站备案成功怎么查备案号专业网站建设人工智能研发
  • 宁波高新区网站制作app开发公司重庆
  • 在线推广是网站推广百度应用商店下载安装
  • nginx wordpress 多站点大连金广建设集团
  • 网站建设文化策划方案成都软件开发外包
  • 一元购网站建设流程举报网站建设
  • 温州市网站优化沈丘做网站去哪里
  • 如何提高网站的知名度两岸已进入准战争状态
  • 西安市地铁建设指挥部网站网站制作的困难和解决方案
  • 政务网站建设目的 意义吉林建设公司网站