创意电子

标题: JDK8源码解析-String-修饰符及接口实现(一) [打印本页]

作者: 程序猿食堂    时间: 2021-8-24 21:46
标题: JDK8源码解析-String-修饰符及接口实现(一)
[size=0.882em]源码解析基于jdk1.8.0_261进行分析


[size=0.882em]前言
[size=0.882em]String类是java出山时,就带出来的兄弟,在1.0版本,就有String类的出现,但并没有如今的Api丰富,从jdk1.0(1996)到jdk1.8(2016)用了18年的时间,廉颇虽老尚能战也
[size=0.882em]String是Java语言的核心类,位于rt.jar下java.lang包中,它提供了字符串的比力、查找、截取、大小写转换等操纵;Java语言为"+"连接符(字符串连接符)以及对象转换为字符串提供了特殊的支持,字符串对象可以使用”+"连接其他对象
[size=0.882em]如果饶有爱好的读者,可以看下String类注释,讲述了String的使用方式及它的作用,这里我们只讲源码.下面我们对String类源码整篇解读一下
[size=0.882em]类修饰符及接口实现
[size=0.882em]首先介绍下标记中每个关键字或接口出如今此处的意义
[size=0.882em]public:Java语言中访问限制最宽的修饰符,一般称之为"公共的"被其修饰的类、属性以及方法不但可以跨类访问,而且允许跨包(package)访问.
[size=0.882em]final 如果引用为基本数据范例,则该引用为常量,该值无法修改;
[size=0.882em]final 如果引用为引用数据范例,比如对象,数组,则该对象或数组本身可以修改,但指向该对象或数组的地点的引用不能修改;(栈中地点不可变)
[size=0.882em]final 如果引用时类的成员变量,需要在创建对象前进行赋值,否则在编译阶段就会报错.
[size=0.882em]final 修饰方法:当使用final修饰方法时,这个方法将成为终极方法,无法被子类重写,但该方法仍然可以被继承.
[size=0.882em]final 修饰类:当用final修改类时,该类成为终极类,无法被继承.即:不可派生类
[size=0.882em]java.io.Serializable:接口是一个标志性接口,在接口内部没有定义任何属性与方法.只是用于标识此接口的实现类可以被序列化与反序列化,在后期我们讲到时,会详细讲一下这个接口
[size=0.882em]java.lang.Comparable:强行对实现它的每个类的对象进行整体排序,这种排序被称为类的自然排序,类的 compareTo 方法被称为它的自然比力方法,在后期我们讲到时,会详细讲一下这个接口
[size=0.882em]java.lang.CharSequence:字符序列,是一个形貌字符串结构的接口,此接口对多种不同的char访问的统一接口,CharSequence和String都可以定义字符串,但是String定义的字符串只能读,CharSequence定义的字符串是可读可写的
[size=1.176em]综上所述,总结下:

                               
登录/注册后可看大图



更多好文请看:IBO-JDK8源码解析-String 类(一)
作者: 富马2    时间: 2021-8-25 06:25
转发了




欢迎光临 创意电子 (https://www.wxcydz.cc/) Powered by Discuz! X3.4