swift面向对象详解
来源:互联网 发布:数据去噪算法 编辑:程序博客网 时间:2024/05/16 09:34
swift的面向对象(主要包括如何创建类,创建和使用类方法,类的继承,类的扩展,如何使用接口及协议 命名空间(在同一个类,在不同的类))
//
// main.swift
// SwiftObjectFromJike
//
// Created by ytdxxt on 14-12-11.
// Copyright (c) 2014年 xutao. All rights reserved.
//
import Foundation
//1、创建类的方法
class sayHi {
//构造方法
var _name : String
init(name:String){
_name=name
}
func printIt(){
println("Hello Swift \(_name)")
}
//2.类方法
class func sayHello(){
println("Hi Swift")
}
}
var h=sayHi(name: " xutao")
h.printIt()
sayHi.sayHello()
//3.继承
class inherit: sayHi {
//重写方法
override func printIt() {
//执行父类的方法
super.printIt()
println("overWrite \(_name)")
}
}
var hi=inherit(name: "big xu")
hi.printIt()
//4.类的扩展
extension sayHi{
func printSecond(){
println("extension")
}
}
var hi2=sayHi(name: "Swift")
hi2.printSecond()
hi2.printIt()
//5.如何使用接口(协议)
protocol people{
func getName()->String
}
class Male:people{
func getName() -> String {
return "protocol"
}
}
var pro = Male()
println("my class is \(pro.getName())")
//6.命名空间
class first{
class second {
class third {
func nameH(){
println("nameSpace")
}
}
}
}
var nameSpace=first.second.third()
nameSpace.nameH()
class firstSpace {
class secondSpace {
}
}
//通过扩展的方式添加类在同一个命名空间下,添加更多的类
extension firstSpace.secondSpace{
class sayNameSpace {
func nameSpace(){
println("classFirst")
}
}
}
extension firstSpace.secondSpace{
class sayNameSpaceSec {
func nameSpaceSec(){
println("classSecond")
}
}
}
var nameSpaceExtension=firstSpace.secondSpace.sayNameSpaceSec()
nameSpaceExtension.nameSpaceSec()
//通过建多个类的方式
myswift类
class hello {
class jkxy {
}
}
Hi类extension hello.jkxy{
class hi {
func sayHi(){
println("hi jikexueyuan")
}
}
}
Hello类extension hello.jkxy{
class hello {
func sayHello(){
println("Hello jkxy")
}
}
}
var hh=hello.jkxy.hello()
hh.sayHello()
var hhh=hello.jkxy.hi()
hhh.sayHi()
- swift面向对象详解
- Swift面向对象-枚举
- Swift:面向对象(属性)
- swift 面向对象
- Swift 之面向对象
- Swift面向对象
- ios-Swift面向对象
- Swift学习笔记|Swift面向对象
- Swift OOP面向对象浅析
- Swift学习笔记-面向对象
- Swift面向对象之枚举
- swift面向对象之属性
- swift面向对象之方法
- swift 新特性 -面向对象
- XZ_Swift之Swift面向对象
- Python面向对象详解
- Javascript 面向对象详解
- java面向对象详解
- 【面向对象】——六原则
- 苹果电脑使用帮助
- 黑马程序员——List的设置值,跟变量的位置关系(变量范围的变化导致结果差别很大)
- Zedboard移植USB无线网卡驱动心得
- Linux学习笔记(一)——系统中用户切换
- swift面向对象详解
- java设计模式--工厂模式
- 通过Terminal安装VMware Tools
- 找零钱问题
- OC内存管理(非ARC)
- 一道阿里巴巴面试题求解答
- 深入Rails3: ActiveSupport 的 class_attribute
- This is only a manuscript of libsvm experiment
- cordova跳转到js界面黑屏