Swift 基础知识Part2
2015-11-03 14:40
399 查看
import Foundation print("Hello, World!") // 类的定义 class Person { // 定义属性 var name: String! var age:Int! // 定义一个计算属性 var number:Int { get { return 10 }set{ print(newValue) } } // 类方法 static func test(){ print("你好八戒") } // 这个也是类方法 但是用class 修饰的类方法 子类可以重写这个类方法 class func sayHello(){ print("hello") } //实例方法 func sayHi(){ print("hi") } // 构造函数(重写init方法) init (name:String,age:Int){ self.name=name self.age=age } // 无参init 方法 init(){ } } // 继承 class Student: Person { // 重写父类方法 关键字 override class func sayHello(){ print("帅哥") } } // 创建对象 var p1=Person(name:"jiangchen", age: 18) p1.name="江晨" p1.age=18 var stu1=Student(name: "江晨", age: 20) Person.test() Person.sayHello() Student.sayHello() // 协议 protocol myProtocol{ // 默认必须要实现 func test() } // 这个协议的方法是可选择的 @objc protocol myProtocol1{ optional func test1() } // 遵循协议 class Teacher:myProtocol,myProtocol1 { // 实现协议的方法 func test() { print("哈哈") } // 这个是可选的方法 @objc func test1() { print("你是可选的") } } // 创建对象teacher var tea=Teacher() tea.test1() // 类目 class 八戒 { func test(){ print("八戒") } } extension 八戒{ func test1(){ print("八戒正在讲课") } } //创建对象 var ��=八戒() ��.test1() ��.test() protocol myProtocol2{ func eat() } // 延展(类目) 不仅可以给类添加私有方法,还可以给类添加(延展出来的)协议 extension 八戒:myProtocol2{ func eat() { print("还在吃呢") } } ��.eat() // 值类型引用 和 struct rect { var name:String! var age:Int! } class rect1{ var name:String! var age:Int! init (name:String ,age:Int){ self.name=name self.age=age } } // 创建对象 var re1=rect(name: "小八戒", age: 18) var re2=re1 re1.name="大八戒" print(re2.name) var re3=rect1(name: "中八戒", age: 20) var re4=re3 re3.name="老八戒" print(re4.name) // 在swift中这就是闭包 (也就是oc中的block) typealias block = ()->Void var rest :block={ print("小小的block") } rect()
相关文章推荐
- iOS swift 通过Url打开自定义的app
- 详解Swift编程中的常量和变量
- Swift 入门基础(结构体/类)
- OC + Swift 混编(二)
- OC + Swift 混编 (一)
- ios swift UIwebView
- swift控制语句,for,while,repeat-while,if,switch
- Swift高级运算符(Advanced Operators)
- swift 快速奔跑的兔几 本节的内容是:animations
- Swift 学习笔记 - 闭包
- ios中的各种控件(Swift开发实战权威指南笔记)
- swift 快速奔跑的兔几 本节的内容是:重力和snap效果
- Swift 学习笔记 - 类(1) 定义一个类
- 源码推荐(11.03):定制的Alertview 不用写代理不用实例化,Swift版本 随着键盘升起淡入一个view
- swift学习笔记_iOS开发(一)
- swift 初始化方法
- swift学习Day01
- swift 快速奔跑的兔几 本节的内容是:UIDynamic:UI和重力
- Swift语言学习---------初级
- Instance Methods are Curried Functions in Swift