繁体   English   中英

扩展String(或类似)的Java类

[英]Java Class that extends String (or similar)

这主要是出于好奇。 你如何(如果可以的话)创建一个模仿String的类。 你不能扩展String,因为它是final所以这是一个不行,但纯粹为了兴趣因素,我考虑创建一个可以按字面初始化的对象( String s = "string"; )。

这可能吗? 如果是这样,怎么样? 如果没有,为什么?

不,不可能在Java中引入自己的文字类型。 语言规范给出了数字,字符和字符串文字的语法,就是这样。

您甚至无法将自己的隐式转换从具有文字表示的现有类型添加到您自己的自定义类型(就像在C#中一样 - 作为Java的“近亲”的示例)。

出于安全原因,String是Final。

但是,从Java 1.4开始,String一直是CharSequence接口的实现。 如果您根据CharSequences编写代码,您将能够针对该接口的任何实现运行它,包括String。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM