Tag: 方法

Netbeans 7.4引入了每个方法规则的“最多10行”。 这条规则从哪里来?

NetBeans 7.4 beta目前可供公开下载,并且默认引入了一个奇怪的警告规则: 方法长度为16行(允许10个) 我的问题是:这是一个被接受的代码约定规则,可以certificate某处,某处? NetBeans支持/开发人员说,这不是一个错误,但不要声明为什么他们只允许10行,并确切地说,这条规则的起源。

在C#中只传入一个types作为参数

假设这样做对我来说很方便: foo.GetColumnValues(dm.mainColumn, int) foo.GetColumnValues(dm.mainColumn, string) GetColumns方法将根据传递的types调用不同的方法。 是的,我可以做一个布尔标志或类似的,我只是想知道是否有办法或许通过这个,然后问: typeof(arg [1])或类似的… 我也可以重写方法,使用generics等 – 我知道有不同的方法来做到这一点,我只是好奇,如果这是可能的。

两个Java方法可以有不同的返回types的同名吗?

两个Java方法可以使用不同的返回types具有相同的名称吗? 方法的返回types是不同的,它们用相同方法的名字声明。 这是允许的吗?

这是什么布尔“(数字&1)== 0”是什么意思?

在CodeReview上,我发布了一段代码,并要求提供改进的提示。 我得到的是使用布尔方法来检查一个ArrayList是否有偶数个索引(这是必需的)。 这是build议的代码: private static boolean isEven(int number) { return (number & 1) == 0; } 由于我已经向那个特定的用户求助了很多帮助,所以我决定是时候纠缠这个SO社区了! 我真的不明白这是如何工作的。 该方法被调用并将ArrayList的大小作为参数(即ArrayList有十个元素,数字= 10)。 我知道一个人运行数字和1的比较,但之后我迷路了。 我读它的方式,它是说如果number == 0和1 == 0返回true。 我知道第一个不是真的,后者显然没有意义。 有人能帮我吗? 编辑:我应该补充说,代码的工作,以防万一有人想知道。

如何从JavaScript中的子类调用父方法?

我花了几个小时试图find解决我的问题,但似乎是无望的。 基本上我需要知道如何从一个子类调用父方法。 到目前为止,我所尝试过的所有东西都以不工作或覆盖父方法结束。 我正在使用下面的代码在JavaScript中设置OOP: // SET UP OOP // surrogate constructor (empty function) function surrogateCtor() {} function extend(base, sub) { // copy the prototype from the base to setup inheritance surrogateCtor.prototype = base.prototype; sub.prototype = new surrogateCtor(); sub.prototype.constructor = sub; } // parent class function ParentObject(name) { this.name = name; } // parent's methods ParentObject.prototype […]

如何在Python中获取实例variables?

有没有在Python中的内置方法来获取所有类的实例variables的数组? 例如,如果我有这个代码: class hi: def __init__(self): self.ii = "foo" self.kk = "bar" 有没有办法让我这样做: >>> mystery_method(hi) ["ii", "kk"] 多谢你们! 编辑:我原本是错误地要求类variables。 感谢所有提请我注意的人!

为什么不抽象领域?

为什么Java类不能像抽象方法那样具有抽象字段? 例如:我有两个类扩展相同的抽象基类。 这两个类每个都有一个相同的方法,除了一个String常量,它们恰好是一个错误信息。 如果字段可能是抽象的,我可以使这个不变的抽象,并将方法拉入基类。 相反,我必须创build一个抽象方法,在这种情况下称为getErrMsg() ,它返回String,在两个派生类中重写此方法,然后可以调用抽象方法(现在称为抽象方法)。 为什么我不能把这个领域的摘要作为开始? Java可以devise成允许这个吗?

在一个Class方法中调用一个函数?

我一直在试图找出如何去做这个,但我不太确定如何。 这是我正在尝试做的一个例子: class test { public newTest(){ function bigTest(){ //Big Test Here } function smallTest(){ //Small Test Here } } public scoreTest(){ //Scoring code here; } } 这里是我有问题的部分,我怎么称之为bigTest()?

如何命名工厂像方法?

我想大多数工厂像方法开始create 。 但为什么他们叫做“ 创造 ”? 为什么不“ 制造 ”,“ 生产 ”,“ build造 ”,“ 生成 ”或其他? 这只是一个品味问题吗? 一个约定? 还是在“创造”中有特殊意义? createURI(…) makeURI(…) produceURI(…) buildURI(…) generateURI(…) 一般你会select哪一个,为什么?

在Python中,什么时候应该使用函数而不是方法?

Python的禅说,应该只有一种方法来做事情 – 但我经常遇到决定何时使用函数与何时使用方法的问题。 我们来看一个简单的例子 – 一个ChessBoard对象。 比方说,我们需要一些方法来获得董事会提供的所有合法的国王移动。 我们写ChessBoard.get_king_moves()或get_king_moves(chess_board)吗? 以下是我看到的一些相关问题: 为什么python使用“魔术方法”? 是否有一个原因Pythonstring没有string长度的方法? 我得到的答案很大程度上是不确定的: 为什么Python使用一些function的方法(如list.index()),但其他function(例如len(列表))? 主要原因是历史。 函数被用于那些对于一组types是通用的操作,并且即使对于根本没有方法的对象(例如,元组)也可以工作。 当你使用Python的function特性(map(),apply()等)时,有一个函数可以很容易地应用到非对象集合中。 实际上,实现len(),max(),min()作为一个内置的函数,实际上比实现它们的方法更less。 人们可以对个别案例进行质疑,但是它是Python的一部分,现在就做出这种根本性的改变为时已晚。 函数必须保持以避免大量的代码破坏。 有趣的是,上面的内容并没有太多说明采取什么策略。 这是原因之一 – 使用自定义方法,开发人员可以自由select不同的方法名称,如getLength(),length(),getlength()或任何其他方法。 Python强制严格命名,以便可以使用常用函数len()。 稍微有趣一点。 我认为function是某种意义上的Pythonic版本的接口。 最后, 从圭多本人 : 谈到能力/接口让我想起了一些“stream氓”特殊的方法名称。 在“语言参考”中,它指出:“一个类可以通过定义具有特殊名称的方法来实现特定语法(如算术运算或者下标和切片)所调用的某些操作。 但是,所有这些方法都有一些特殊的名字,比如__len__或__unicode__ ,它们似乎是为了内置函数而提供的,而不是为了支持语法。 据推测,在基于接口的Python中,这些方法会变成ABC上的定期命名方法,这样__len__会变成 class container: … def len(self): raise NotImplemented 虽然再想一想,但我不明白为什么所有的句法操作都不会在特定的ABC上调用适当的通常命名的方法。 例如,“ < ”大概会调用“ object.lessthan ”(或者可能是“ comparable.lessthan object.lessthan ”)。 所以另外一个好处就是能够让Python远离这个蹩脚的怪名,这在我看来是一个HCI的改进 。 嗯。 我不确定我是否同意(数字:-)。 有两个“Python基本原理”,我想先解释一下。 […]