草庐IT

private_only

全部标签

ruby - 了解 Ruby 中的私有(private)方法

classExampleprivatedefexample_testputs'Hello'endende=Example.newe.example_test这当然行不通,因为我们指定了显式接收者-Example(e)的实例,这违反了“私有(private)规则”。但我不明白,为什么不能在Ruby中这样做:classFoodefpublic_mself.private_m#public_m方法定义中的当前对象(即self)是Foo的实例。那么为什么不允许呢?要解决这个问题,我必须将self.private_m更改为private_m。但为什么这不同,self不是public_m中的Foo

ruby - 如何在 Ruby 中使类构造函数私有(private)化?

classAprivatedefinitializeputs"wtf?"endendA.new#stillworksandcallsinitialize和classAprivatedefself.newsuper.newendend完全没有效果那么正确的做法是什么?我想将new设为私有(private)并通过工厂方法调用它。 最佳答案 试试这个:classAprivate_class_method:newendMoreonAPIDock 关于ruby-如何在Ruby中使类构造函数私有(p

ruby-on-rails - Rails 中的 protected 和私有(private)方法

Ruby中的方法可见性(公共(public)、protected和私有(private)方法)在thisblogpost等地方得到了很好的解释。.但在RubyonRails中,由于框架的设置方式,它似乎与在常规Ruby应用程序中略有不同。那么,在Rails模型、Controller、助手、测试等中,什么时候适合/不适合使用protected或私有(private)方法?编辑:感谢您到目前为止的回答。我了解Ruby中protected和private的概念,但我正在寻找更多关于在Rails应用程序的各个部分(模型、Controller、助手、测试)的上下文中使用这些类型的可见性的典型方式

ruby - Ruby 中的私有(private)方法应该放在哪里?

大多数博客或教程或书籍在任何类/模块的底部都有私有(private)方法。这是最佳做法吗?我发现在必要时使用私有(private)方法更方便。例如:publicdefmy_method#dosomethingminion_methodendprivatedefminion_method#dosomethingendpublicdefnext_methodend这样我发现代码更具可读性,而不是不断地上下滚动,这非常令人恼火。这种方法有什么严重的错误吗?在底部使用私有(private)方法是否不仅仅是一种最佳实践和其他东西? 最佳答案

ruby - Ruby 中的私有(private)模块方法

我有一个两部分的问题最佳实践我有一个算法可以使用公共(public)接口(interface)对数据结构执行某些操作它目前是一个包含许多静态方法的模块,除了一个公共(public)接口(interface)方法外,所有静态方法都是私有(private)的。有一个实例变量需要在所有方法之间共享。这些是我能看到的选项,哪个是最好的?:模块带有静态(ruby中的“模块”)方法Class使用静态方法Mixin模块用于包含到数据结构中重构修改该数据结构(非常小)的算法部分,并使其成为调用算法模块静态方法的混合技术部分有什么方法可以制作私有(private)模块方法?moduleThingdefs

ruby - 如何创建私有(private)类方法?

这种创建私有(private)类方法的方法是如何工作的:classPersondefself.get_namepersons_nameendclassraises"privatemethod`persons_name'calledforPerson:Class(NoMethodError)"但这不是:classPersondefself.get_namepersons_nameendprivatedefself.persons_name"Sam"endendputs"Hey,"+Person.get_nameputs"Hey,"+Person.persons_name

javascript - 如何在调用之间调用函数调用私有(private)变量

这是一个直接来自教科书的简单方法,我似乎找不到。我有一个javascript函数。我希望它包含一个private变量,该变量在两次调用之间记住它的值。谁能唤起我的内存。 最佳答案 使用闭包创建它:functionf(){varx=0;returnfunction(){returnx++;};}然后按如下方式使用:>g=f()function(){returnx++}>g()0>g()1>g()2 关于javascript-如何在调用之间调用函数调用私有(private)变量,我们在Sta

javascript - xul : creating a right click context menu item for only hyperlinks

我有一个关于构建firefox插件的问题,基本上我的目标是做以下事情,1)在我的插件中,我只想为链接[anchortags]显示右键单击上下文菜单项,并为页面的其余部分隐藏菜单项2)如何将动态列表添加到我的菜单中,即根据用户的选择动态添加菜单列表项的数量。谁能给我指出正确的方向谢谢!! 最佳答案 为contextmenu事件绑定(bind)一个事件监听器,判断被点击的元素是否为链接,例如:window.addEventListener("contextmenu",function(e){varmenu=document.getEle

javascript - 定义 `that = this` 将如何帮助我创建私有(private)变量/成员?

我正在阅读DouglasCrawford'spiece关于在javascript类中创建私有(private)变量。他在其中说您必须声明that=this以“使对象可用于私有(private)方法”。但是,我能够构建一个具有私有(private)成员、私有(private)方法和公共(public)方法的示例,而无需定义that=this:functionForm(id_code){//privatevariablevarid_code=id_code;varcolor='#ccc';//privatemethodfunctionbuild_style_attribute(){retu

javascript - jQuery 为什么 :hover work only once?

我一直在使用以下代码片段在Chrome/Safari和FF中确定用户是否将鼠标悬停在anchor上。varisURL=$("a",obj).is(":hover");我看过很多关于:hover是CSS选择器的帖子,但我无法理解的是,如果obj中有1个链接但抛出true,代码会返回trueem>javascriptunrecognizedexpressionhover错误如果有2个或更多。这是:hover工作的fiddle:-http://jsfiddle.net/2kyaJ/122/相同但多个元素(不工作):-http://jsfiddle.net/2kyaJ/121/谁能给我解释一下