文档章节

《从零开始学Swift》学习笔记(Day 25)——类和结构体定义

智捷课堂
 智捷课堂
发布于 2015/10/21 10:17
字数 405
阅读 43
收藏 0

原创文章,欢迎转载。转载请注明:关东升的博客

Swift中的类和结构体定义的语法是非常相似的。类使用class关键词定义类,使用struct关键词定义结构体,它们的语法格式如下:

class 类名 {
    定义类的成员
}
struct 结构体名 {
    定义结构体的成员
}

从语法格式上看,Swift中的类和结构体的定义更类似于Java语法,不需要像C++Objective-C那样把接口部分和实现部分放到不同的文件中。

下面来看一个示例:

class Employee {             //定义的类
    var no: Int = 0           
    var name: String = ""     
    var job: String?          
    var salary: Double = 0        
 
    var dept: Department?         
}
 
struct Department {          //定义的结构体
    var no: Int = 0           
    var name: String = ""     
}

里面定义了一些属性。

EmployeeDepartment是有关联关系的

下列语句实例化:

let emp = Employee()
var dept = Department()

Employee()Department()是调用它们的构造函数实现实例化。 

注意:类声明为let常量还是var变量呢?从编程过程讲类一般声明为let常量,由于类是引用数据类型,声明为let常量只是说明不能修改引用,但是引用指向的对象可以被修改。

 

欢迎关注关东升新浪微博@tony_ 关东升。
关注智捷课堂微信公共平台,了解最新技术文章、图书、教程信息
                                                 
 
更多精品iOSCocos、移动设计课程请关注智捷课堂官方网站:
http://www.zhijieketang.com
智捷课堂论坛网站:
http://51work6.com/forum.php

 

 

© 著作权归作者所有

智捷课堂

智捷课堂

粉丝 40
博文 239
码字总数 215495
作品 0
东城
私信 提问
Go语言基础学习:变量

Go语言基础学习(一)变量 猜你喜欢 Ceylon语言学习笔记(1) 《从零开始学Swift》学习笔记(Day 69)——Swift与Objective-C混合编程之语言 go语言学习-常量 GO语言学习-复杂类型(2) Go语言学习...

d_watson
2016/04/15
13
0
关东升的《从零开始学Swift》第2版已经出版

关东升的《从零开始学Swift》第2版已经出版 大家好: 苹果2015WWDC大会发布了Swift2.0,它较之前的版本Swift1.x有很大的变化,所以我即将出版《从零开始学Swift》 《从零开始学Swift》将在《...

tony关东升
2016/02/24
0
0
《从零开始学Swift》学习笔记(Day 49)——扩展声明

原创文章,欢迎转载。转载请注明:关东升的博客 声明扩展的语法格式如下: extension 类型名 { //添加新功能 } 声明扩展的关键字是extension,“类型名”是Swift中已有的类型,包括类、结构体...

智捷课堂
2015/12/16
43
0
《从零开始学Swift》学习笔记(Day 36)——静态方法

原创文章,欢迎转载。转载请注明:关东升的博客 静态方法与静态属性类似,Swift中定义了静态方法,也称为类型方法。静态方法的定义与静态属性类似,枚举和结构体的静态方法使用的关键字是sta...

智捷课堂
2015/11/16
45
0
《从零开始学Swift》学习笔记(Day 29)——访问级别

原创文章,欢迎转载。转载请注明:关东升的博客 访问级别: Swift提供了3种不同访问级别,对应的访问修饰符为:public、internal和private。这些访问修饰符可以修饰类、结构体、枚举等面向对...

智捷课堂
2015/10/30
17
0

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周日乱弹 —— 我,小小编辑,食人族酋长

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @宇辰OSC :分享娃娃的单曲《飘洋过海来看你》: #今日歌曲推荐# 《飘洋过海来看你》- 娃娃 手机党少年们想听歌,请使劲儿戳(这里) @宇辰OSC...

小小编辑
今天
681
10
MongoDB系列-- SpringBoot 中对 MongoDB 的 基本操作

SpringBoot 中对 MongoDB 的 基本操作 Database 库的创建 首先 在MongoDB 操作客户端 Robo 3T 中 创建数据库: 增加用户User: 创建 Collections 集合(类似mysql 中的 表): 后面我们大部分都...

TcWong
今天
39
0
spring cloud

一、从面试题入手 1.1、什么事微服务 1.2、微服务之间如何独立通讯的 1.3、springCloud和Dubbo有哪些区别 1.通信机制:DUbbo基于RPC远程过程调用;微服务cloud基于http restFUL API 1.4、spr...

榴莲黑芝麻糊
今天
25
0
Executor线程池原理与源码解读

线程池为线程生命周期的开销和资源不足问题提供了解决方 案。通过对多个任务重用线程,线程创建的开销被分摊到了多个任务上。 线程实现方式 Thread、Runnable、Callable //实现Runnable接口的...

小强的进阶之路
昨天
72
0
maven 环境隔离

解决问题 即 在 resource 文件夹下面 ,新增对应的资源配置文件夹,对应 开发,测试,生产的不同的配置内容 <resources> <resource> <directory>src/main/resources.${deplo......

之渊
昨天
71
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部