`
xu_wccq
  • 浏览: 128359 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

ruby core search

    博客分类:
  • ruby
阅读更多
 如何使用类名来获得类?

如果我有classname = "String时,如何生成SomeClass类的实例呢?主要有两个解决方法。"

ruby 代码
 
  1. [1] eval(classname).new  
  2. [2] Object.const_get(classname).new  

第1种方法既简单又可以处理嵌套类(Net::HTTP等),但如果在CGI环境中滥用它的话,将十分危险。


而第2种方法却又无法处理嵌套类的问题。但如果进行以下处理的话,就可以处理嵌套类了。

ruby 代码
  1. # 如果只考虑Ruby 1.8之后的版本的话,可以这样  
  2.  cs = classname.split(/::/).inject(Objectdo | c , name |  
  3.            c.const_get(name)   
  4.          end   
  5. => String  
  6.   
  7. cs.new("Create a object from a string")           
  8.  => "Create a object from a string"  

分享到:
评论

相关推荐

    rubyinstaller-devkit-2.5.3-1-x64.exe

    The Ruby core and standard library documentation is part of the installation. We also recommend the online documentation or HTML version downloadable from ruby-doc.org. SUPPORT Enjoy, happy Ruby ...

    osmn:OpenStreetMap Nominatim API 的 Ruby 包装器

    OpenStreetMap Nominatim API 的 Ruby 包装器。 Nominatim 是一种通过名称和地址搜索 osm 数据并生成 osm 点的合成地址(反向地理编码)的工具。 服务可以在找到 API 详细信息可以在找到 安装 $ gem install ...

    homebrew-core

    自制酒 如何安装这些公式? brew install infomaker...要列出水龙头提供的公式/工具,请运行: brew search infomaker/core 要获取公式的文档,请运行: brew info infomaker/core/oc brew help , man brew或检查。

    xmljava系统源码-jstarcraft-tutorial:一套涵盖核心编程,人工智能,数字图像处理,自然语言处理,推荐与搜索,云服务领域

    xml java系统源码 JStarCraft Framework 一套涵盖核心编程,人工智能,数字...transaction模块:支持7种分布式锁(Cassandra/ElasticSearch/Hazelcast/Hibernate/Mongo/Redis/ZooKeeper) 2020.05.11 common模块instant包:

    jstarcraft-rns:专注于解决推荐领域与搜索领域的两个核心问题:排序预测(排名)和评分预测(评分)。为相关领域的研发人员提供完整的通用设计与参考实现。涵盖了70多种排序预测与评分预测算法,是加速最全的Java推荐与搜索引擎

    Ruby 安装 JStarCraft RNS要求使用者具有以下环境: JDK 8或以上 Maven 3 安装JStarCraft-Core框架 git clone https://github.com/HongZhaoHua/jstarcraft-core.git mvn install -Dmaven.test.skip=true 安装...

    java开源包1

    业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间,因而OAUTH是简易的。目前互联网很多服务如Open API,很多大头公司如Google,Yahoo,Microsoft等都提供了OAUTH...

    java开源包11

    业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间,因而OAUTH是简易的。目前互联网很多服务如Open API,很多大头公司如Google,Yahoo,Microsoft等都提供了OAUTH...

    java开源包2

    业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间,因而OAUTH是简易的。目前互联网很多服务如Open API,很多大头公司如Google,Yahoo,Microsoft等都提供了OAUTH...

    java开源包3

    业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间,因而OAUTH是简易的。目前互联网很多服务如Open API,很多大头公司如Google,Yahoo,Microsoft等都提供了OAUTH...

    java开源包6

    业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间,因而OAUTH是简易的。目前互联网很多服务如Open API,很多大头公司如Google,Yahoo,Microsoft等都提供了OAUTH...

    java开源包5

    业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间,因而OAUTH是简易的。目前互联网很多服务如Open API,很多大头公司如Google,Yahoo,Microsoft等都提供了OAUTH...

    java开源包10

    业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间,因而OAUTH是简易的。目前互联网很多服务如Open API,很多大头公司如Google,Yahoo,Microsoft等都提供了OAUTH...

    java开源包4

    业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间,因而OAUTH是简易的。目前互联网很多服务如Open API,很多大头公司如Google,Yahoo,Microsoft等都提供了OAUTH...

    java开源包8

    业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间,因而OAUTH是简易的。目前互联网很多服务如Open API,很多大头公司如Google,Yahoo,Microsoft等都提供了OAUTH...

    java开源包7

    业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间,因而OAUTH是简易的。目前互联网很多服务如Open API,很多大头公司如Google,Yahoo,Microsoft等都提供了OAUTH...

    java开源包9

    业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间,因而OAUTH是简易的。目前互联网很多服务如Open API,很多大头公司如Google,Yahoo,Microsoft等都提供了OAUTH...

    java开源包101

    业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间,因而OAUTH是简易的。目前互联网很多服务如Open API,很多大头公司如Google,Yahoo,Microsoft等都提供了OAUTH...

    Java资源包01

    业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间,因而OAUTH是简易的。目前互联网很多服务如Open API,很多大头公司如Google,Yahoo,Microsoft等都提供了OAUTH...

    JAVA上百实例源码以及开源项目

    百度云盘分享 简介 笔者当初为了学习JAVA,收集了很多经典源码,源码难易程度分为初级、中级、高级等,详情看源码列表,需要的可以直接下载! 这些源码反映了那时那景笔者对未来的盲目,对代码的热情、执着,对...

    JAVA上百实例源码以及开源项目源代码

    简介 笔者当初为了学习JAVA,收集了很多经典源码,源码难易程度分为初级、中级、高级等,详情看源码列表,需要的可以直接下载! 这些源码反映了那时那景笔者对未来的盲目,对代码的热情、执着,对IT的憧憬、向往!...

Global site tag (gtag.js) - Google Analytics