面向对象编程语言
在java中为什么String字符串可以作为对象来管理?
看到Java,String这两个单词,真的是雾里看花,水中望月。平时除了上上网,看看新闻或其他节目。对互联网及电脑专业知识懂得甚少。看来还是那句老话,活到老学到老。借此良机,学习新的知识何乐而不为呢。至于在j***中为什么String字符串可以作为对象来管理?从非专业的角度谈一下看法。
String:是编程语言的字符串,如“USA",“美国人"。String是j***a等编程语言中的字符串,字符串是一个特殊的对象,属于引用类型。在j***a中,String类对象创建后,字符串一旦初始化就不能更改。因为字符串类中所有的字符串都是常量,所以数据无法更改。由于字符串类的不可变更,因此可以共享。对于String的任何改变,都会返回一个新的String对象。据此原理,字符串做为编程语言的引用词语,肯定是要符合编程语言的程序需要而组成。规范的应用,也需要对字符串对象的科学管理。也就是更简捷准确的引用表达。
j***a经过二十多年的应用,越来越成熟,真的是日新月异,给人们的工作生活带来了很大的方便。一个全新的高智能化社会正在造福于全人类的共同进步。
1、J***a字面量
3、通过实例化String类来创建字符串对象
而J***a中的String字符串是可以直接当成对象来操作的,这是什么原理呢?
像以上定义“字符串”的方式其实在J***a虚拟机中都是生成了字符串对象,只不过这些字符串对象在内存中的存取机制不同的。比如说:
1、字符串字面量、字符串常量池
J***a中的字符串字面量就是一对用双引号括起来的字符串,比如:“中国人”。
字符串常量是永生代,通俗的说就是常量池,当遇到 String str="字符串" 时,编译器会在永生代中检查是否存在这个常量的引用,若存在则直接把地址赋给栈;若不存在则先在永生代中开辟内存空间,然后把地址赋给栈指针。
也就是说,字符串常量池中存放的依旧是字符串对象的引用。
[免责声明]本文来源于网络,不代表本站立场,如转载内容涉及版权等问题,请联系邮箱:83115484@qq.com,我们会予以删除相关文章,保证您的权利。转载请注明出处:http://www.wnpsw.com/post/11979.html