在Swift中,定义公共模式的常规方式是什么,在该模式中,属性是外部只读的,但可以由拥有该属性的类(和子类)在内部进行修改。
在Objective-C中,有以下选项:
在Java中,约定为:
Swift的成语是什么?
给定一个类属性,您可以通过在属性声明的前面加上access修饰符,然后在括号之间get
或set
括号之间指定不同的访问级别。例如,具有公共获取器和私有设置器的类属性将声明为:
private(set) public var readonlyProperty: Int
建议阅读:Getters和Setters
Martin关于可访问性级别的考虑仍然有效-
即没有protected
修饰符,internal
仅将对模块的访问限制为仅对private
当前文件的访问,并且public
没有任何限制。
2个新的访问修饰符,fileprivate
并且open
已添加到语言中,而private
和public
已稍作修改:
open
仅适用于类和类成员:用于允许对类进行子类化或在定义它们的模块之外重写成员。public
而是使类或成员可公开访问,但不能继承或覆盖
private
现在使成员仅从封闭的声明中可见并可以访问,而fileprivate
对于包含该成员的整个文件
更多细节在这里。
问题内容: 我不知道何时属性应该是私有的,是否应该使用属性。 我最近读到,setter和getters不是pythonic,我应该使用属性装饰器。没关系。 但是,如果我有属性,那一定不能从类外部设置,而是可以读取的(只读属性)。这个属性应该是私有的吗?我所说的私有是指下划线吗?如果是,那么不使用getter怎么读?我现在知道的唯一方法是写 这样我就可以读取属性,但是我无法设置它,所以很好。 但是我
问题内容: 我们为我们的一个应用程序提供了一个连接池组件(JAR文件)。截至目前,应用程序连接详细信息捆绑在JAR文件中(在文件中)。 我们可以使其更通用吗?我们可以让客户端告诉属性文件详细信息(路径和文件名),然后使用JAR来获得连接吗? 客户端代码中包含以下内容是否有意义: 与此同时,客户端将指定(以某种方式???)属性文件详细信息,其中包含要连接的URL,超时等。 问题答案: http://
每个人都知道如果我们想要读取属性文件,我们可以这样做: 但是,现在我有了一个类似于SpringBoot的框架。它可以将Spring与Mybatis集成在一起。 问题是前面的代码只能读取我的项目类路径文件,但我需要使用我的框架读取project属性文件。我是怎么做的?
请查看这段编译良好的代码:
外部读取配置命令 可以写到一个文件中,用 Mininet 直接调用。例如脚本文件名为 my_cli_script,则可以执行 mininet> source my_cli_script 或者 # mn --pre my_cli_script