- Swift 4 Protocol-Oriented Programming(Third Edition)
- Jon Hoffman
- 217字
- 2021-07-08 09:42:35
Property requirements
A protocol can require that the conforming types provide certain properties with specified names and types. The protocol does not say whether the property should be a stored or computed property because the implementation details are left up to the conforming types.
When defining a property within a protocol, we must specify whether the property is a read-only or a read-write property by using the get and set keywords. We also need to specify the property's type since we cannot use the type inference in a protocol. Let's look at how we would define properties within a protocol by creating a protocol named FullName, as shown in the next example:
protocol FullName { var firstName: String {get set} var lastName: String {get set} }
In this example, we define two properties named firstName and lastName, which are read-write properties. Any type that conforms to this protocol must implement both of these properties. If we wanted to define the property as read-only, we would define it using only the get keyword, as shown in the following code:
var readOnly: String {get}
It is possible to define static properties by using the static keyword, as shown in the following example:
static var typeProperty: String {get}
Now let's see how we would add method requirements to our protocol.
- Mastering Ext JS(Second Edition)
- C# 7 and .NET Core Cookbook
- C/C++算法從菜鳥到達人
- PHP網絡編程學習筆記
- Hands-On Swift 5 Microservices Development
- Highcharts Cookbook
- Go并發編程實戰
- 移動界面(Web/App)Photoshop UI設計十全大補
- 愛上micro:bit
- Go語言精進之路:從新手到高手的編程思想、方法和技巧(2)
- Learning AWS
- Java編程從入門到精通
- Unity Android Game Development by Example Beginner's Guide
- C語言程序設計與應用實驗指導書(第2版)
- 例解Python:Python編程快速入門踐行指南