问题标签 [self]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 用于函数的 Python 'self'
我已经阅读了关于“自我”的 SO 帖子,并且我已经阅读了关于类的Python 文档。我想我了解self
Python 类中的使用以及其中的约定。
但是,对于 Python 及其习语来说相对较新,我无法理解为什么self
在过程类型函数定义中使用一些。例如,在有关整数类型的 Python 文档中,示例函数是:
替换self
为num
是相同的功能结果;IE:
没有像__init__
etc 这样的习语,我可以在这里看到为什么self
在第一种情况下使用。我self
在程序函数的其他地方也看到了这种用法,并且发现它令人困惑。
所以我的问题是:如果没有类或方法,为什么self
在函数定义中使用而不是描述性参数名称?
iphone - 在对象的 init 方法中使用 self 关键字分配 ivars
我读过在和对象的“init”方法中使用 self.ivar = (convenience method) 是不好的,因为这会与继承相混淆。
但是,如果您知道您不会对您的对象进行子类化,那么可以使用 self 关键字赋值吗?
我问的原因是这个。我用自己的 init 方法创建了一个新对象,并在该方法中执行各种初始分配。由于我不使用 self 关键字,我将它们直接分配给 iVar,因此使用 alloc 方法而不是便捷方法。IE
或者,如果我使用方便的方法,我会保留它。IE
但是...当我使用内存泄漏工具运行我的程序时,所有这些分配都被识别为内存泄漏。
如果我可以使用 self 关键字加上一个方便的方法而不是 alloc-init,那么这将避免这个问题。
如果我选择使用 alloc-init 方法,我应该在哪里发布 iVar?只是在dealloc?
谢谢你的帮助 :)
迈克尔
asp.net - 无法从模态对话框 window.showModalDialog 下载
如果使用 window.showModalDialog() 在模式弹出窗口中打开 aspx 页面,我无法从 aspx 页面下载文件。
我在 aspx 页面上有一个图像按钮,单击它时,使用一些业务逻辑生成了一个 Excel 文件,然后我将其添加到响应标头以使该文件可供下载。代码如下图所示,
当我将这个 aspx 页面作为模式弹出窗口打开时,它不会显示浏览器的下载窗口。在正常情况下(无模式,使用 window.open 打开)弹出下载工作正常。
我也尝试过使用另一种方法来下载文件。我没有在 中设置响应标头ibtnExport_Click
,而是打开了另一个 aspx 页面,例如 Download.aspx,使用window.open
并在 Download.aspx 的页面加载事件中设置响应标头。代码如下图所示,
在 Download.aspx 中,
好吧,它在模态和非模态弹出窗口的情况下都有效,并且在您将应用程序部署到 IIS 上之前提供了重生:)。是的,这种方法适用于 ASP.NET 开发服务器,但不适用于 IIS。
有什么想法可以在模态弹出窗口上进行下载吗?
objective-c - 何时使用“自我”访问属性
我已在本网站上阅读了有关此问题的许多问题,我了解以下内容:
self.property 访问手动或@synthesize 创建的getter/setter 方法。根据是否将属性声明为保留、复制等,保留计数被正确修改,例如保留属性,释放先前的值,并使用“保留”将新值分配给新值,并将保留计数增加 1。
属性通常使用同名的实例变量来声明(如果您手动进行分配,可能会有所不同)。这一般是因为@synthesize 生成的访问器使用实例变量来引用内存中的对象,然后执行相关命令。
我的问题是基于这样一个事实,即在许多示例中, self.property 和 property 可互换用于不同的事物,并且我在确定规则时遇到了麻烦。Apple Docs 中的“食谱”示例应用程序中的一个示例具有以下内容:
和...
这些属性中的每一个都具有关联的同名私有实例变量。所有都以相同的方式声明为“非原子,保留”属性。每个都在 dealloc 中释放...
然而,“成分”是通过 self 访问的,而“prepTimeTextField”是直接访问的。
访问方法不同的原因是什么?
如果我正在访问视图的委托怎么办?或者是一个核心数据对象,它作为保留属性由之前的视图控制器传递给视图控制器?
非常感谢
iphone - 子视图中的 UIButton,在当前 ViewController 中触发动作
我有个问题。我有一个普通的视图控制器,我在滚动视图中添加 UITextViews。我向这些 UITextviews 添加了动态数量的 UIButtons,我想在其中添加一个目标。我将它们添加到 UITextViews 的原因是,将它们添加到 viewcontroller 添加文本视图的原点会使它们最终出现在屏幕之外而不是滚动,当然。但是当我这样做时,按钮会触发动作。
我的问题是:如何将视图控制器指定为目标?使用 self 或使用在 appdelegate 中创建的 var 作为目标不会触发它。如果“从 textview 向上的两个超级别”将起作用,我将使用它,只是不知道如何正确指定它。
我的代码:
ruby - 在 Ruby 中,在类方法中,self 是类还是实例?
我知道这self
是实例方法中的实例。那么,类是self
在类方法中吗?例如,以下内容可以在 Rails 中使用吗?
objective-c - Objective-C:改变自我内部的“自我”价值
我在 NSDate 上有一个类别,我想实现一些函数来操作日期,例如:
所以我在 NSDate 中有一个函数,例如:
这在函数内部有效,但在此成员函数外部,日期没有改变。我理解这个故障,因为我被告知 self 只是在成员函数内部创建的局部变量。那么,我怎样才能使这项工作?
当然,我可以写:
但我觉得它在实例类中更有意义,因为我不想更改日期,而只是调整先前创建的日期的一些值。
java - Java自检程序(self-checksuming)
我要做一点java自检程序(self-checksum)。这是我的代码示例
我试图做这样的事情
但是我真的不知道如何检查?
编辑:
感谢您的回答
@Adam Paynter 和 SpoonBenders
当然,这不是供我个人使用的。我不会用它来保护任何软件......
这是我必须为我的java课程做的“练习”......
java - Java 自检程序(自动校验和)
我必须分析一个小java自检程序这里是示例
但我真的不明白为什么要做一个 mod 16 并把 result = 12 ?