Java有像C#中的“属性”吗?
发布时间:2020-12-15 08:44:48 所属栏目:Java 来源:网络整理
导读:参见英文答案 Does Java have “properties” that work the same way properties work in C#?????????????????????????????????????5个 我知道这个问题类似于其他人询问Java Properties,这些问题的答案似乎是“不,你必须使用getter / setters”. 我搜索了类
参见英文答案 >
Does Java have “properties” that work the same way properties work in C#?????????????????????????????????????5个
我知道这个问题类似于其他人询问Java Properties,这些问题的答案似乎是“不,你必须使用getter / setters”. 我搜索了类似C#的Java属性,但到目前为止只发现了一个“命中”.我不确定它是属性还是其他东西. Reading the Java Tutorial,我偶然发现了一些文字和代码(**强调和评论我的): Finally,you can use the built-in **length property** to determine the size of any array. The code: //notice lack of brackets after anArray.length : System.out.println(anArray.length); will print the array's size to standard output. 由于Array有一个length属性,Java确实有属性,对吧? 有人可以指出一些关于它们的文档吗? 解决方法
这实际上取决于您使用的定义.在不使用括号的情况下访问某些类的数据是“属性”的一个非常弱的定义.您可以将任何类/实例成员字段设置为公共,从而无需使用方法即可访问它.
这不会使它像C#属性,你可以添加自定义逻辑,如何在该字段上进行获取和设置!你直接读/写变量.数组的长度字段是不可写的,实际上是不可变的,因此完成它并不是一种可怕的风格.但是暴露其领域的其他类也遇到了麻烦,比如Point和Dimension. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |