美文网首页
Swift(三): 函数封装--根据字符串创建对应的对象

Swift(三): 函数封装--根据字符串创建对应的对象

作者: IMSong | 来源:发表于2016-08-08 16:56 被阅读36次
/**
     根据字符串创建对应的对象
     
     - parameter VCName: 类名称的字符串
     */
    func createVCObjectFromString(VCName:String) {
        
        //获取命名空间
        guard let nameSpace = NSBundle.mainBundle().infoDictionary!["CFBundleExecutable"] as? String else{
            print("命名空间获取失败")
            return
        }
        print("命名空间:\(nameSpace)")
        
        
        //获取 Class 的可选类型
        guard let className = NSClassFromString(nameSpace + "." + VCName) else {
            print("className获取失败")
            return
        }
        print("className:\(className)")
        
        
        //转成控制器类型
        guard let classType = className as? UIViewController.Type else{
            print("类型转换失败")
         return
        }
        print("控制器类型:\(classType)")
        
        
        //创建对应的类型的控制器
        let VCObject = classType.init()
        print("最后创建的对象:\(VCObject)")
        
    }

相关文章

  • Swift(三): 函数封装--根据字符串创建对应的对象

  • JS创建对象、JS继承

    一、创建对象 使用工厂模式创建对象用函数来封装以特定接口创建对象的细节,函数createPerson()能够根据接...

  • 03_JS面向对象

    知识点 面向对象的三大特性 封装 继承 多态 创建对象的几种方式 字面量形式 使用内置构造函数 封装简单的工厂函数...

  • Swift 是一门什么样的语言

    Swift 既是面向对象的,又是函数式的编程语言。 Swift是面向对象的语言。 Swift支持类的封装、继承和多...

  • Object对象

    Object构造函数 01 使用Object构造函数创建字符串对象 02 使用Object构造函数创建数字对象 0...

  • 面向对象小问答

    1.面向对象的三大特性是什么,请分别说明?01 封装:使用对象来封装函数和变量,对外提供对应的接口。提供提高代码的...

  • 原型

    1、创建任意一个构造函数时,系统会自动给对应的构造函数创建对应的原型对象; 2、原型对象一般用来存储公共的数据。 ...

  • 反射

    反射的引入 OO设计中侧重封装,其实现方法的核心就是实现控制反转 四种实现方式 根据类名字符串来创建对象 选择对象...

  • abap系列-动态创建内表或结构

    封装了个动态创建对象的类,可以参考ddic对象创建,也可以根据程序内的本地变量创建.- 使用方法1:根据ddic对...

  • js设计模式

    1、工厂模式 //用函数来封装特定接口创建对象细节,抽象创建具体对象的过程 function createProd...

网友评论

      本文标题:Swift(三): 函数封装--根据字符串创建对应的对象

      本文链接:https://www.haomeiwen.com/subject/mnsrsttx.html