Tag: 静态方法

静态variables链接错误

我在Mac上编写C ++代码。 编译时为什么会出现这个错误? 未定义的架构i386符号:“Log :: theString”,引用来自:libTest.a(Log.o)中的Log :: method(std :: string)ld:符号(s)not found for architecture i386叮当声:错误:链接器命令失败,退出代码1(使用-v查看调用) 不知道如果我的代码是错误的,或者我必须添加额外的标志Xcode。 我当前的XCodeconfiguration是“静态库”项目的默认configuration。 我的代码: Log.h ———— #include <iostream> #include <string> using namespace std; class Log{ public: static void method(string arg); private: static string theString ; }; Log.cpp —- #include "Log.h" #include <ostream> void Log::method(string arg){ theString = "hola"; cout << theString << […]

方法可以做成静态的,但应该吗?

Resharper喜欢指出每个asp.net页面可以变成静态的多个函数。 如果我把它们变成静态的,它能帮助我吗? 我应该让他们静态和移动他们到公用事业类?

为什么静态方法不能在Java中抽象

问题是在Java为什么我不能定义一个抽象的静态方法? 例如 abstract class foo { abstract void bar( ); // <– this is ok abstract static void bar2(); //<– this isn't why? }

Python中的静态方法?

是否有可能在Python中有静态方法,所以我可以在不初始化类的情况下调用它们,如: ClassName.StaticMethod ( )

@classmethod和@staticmethod对初学者的意义?

有人可以向我解释@classmethod和@staticmethod在python中的含义吗? 我需要知道其中的差异和意义。 据我所知, @classmethod告诉一个类,它是一种方法应该被inheritance到子类,或…东西。 但是,这是什么意思? 为什么不定义类方法而不添加@classmethod或@staticmethod或任何@定义? tl;博士:我应该什么时候使用它们, 为什么要使用它们,我应该如何使用它们? 我用C ++很高级,所以使用更高级的编程概念应该不成问题。 如果可能,请随意给我一个相应的C ++示例。

如何创build一个自定义EL函数来调用一个静态方法?

Im新的JSF 2.我的问题是相关的BalusC的这个问题的答案jsf2 ajax更新部分根据请求参数我试过了kickstart代码BalusC张贴和我遇到了一个ELparsing错误: /nameofpage.xhtml @12,64 rendered="#{bean.panels.contains('u1')}" Error Parsing: #{bean.panels.contains('u1')} 我猜这是因为我没有运行一个支持Servlet 3.0 / EL 2.2的容器,并且根据Servlet 3.0规范声明了/WEB-INF/web.xml。 我正在使用Tomcat 6。 BalusC在他的答案中build议创build一个自定义ELfunction。 但是,如何使用自定义ELfunction来完成此操作? 或者可以通过configuration我的项目的某些部分来解决这个问题? 下面是我的web.xml : <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5"> <servlet> <servlet-name>Faces Servlet</servlet-name> <servlet-class>javax.faces.webapp.FacesServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>Faces Servlet</servlet-name> <url-pattern>*.jsf</url-pattern> </servlet-mapping> <context-param> <param-name>javax.faces.PROJECT_STAGE</param-name> <param-value>Development</param-value> </context-param> <welcome-file-list> <welcome-file>index.jsp</welcome-file> <welcome-file>index.html</welcome-file> </welcome-file-list> </web-app>

为什么Java不允许重写静态方法?

为什么不可能覆盖静态方法? 如果可能,请使用示例。

Java:何时使用静态方法

我想知道什么时候使用静态方法? 假如我有一个只有几个getter和setter的类,一个或两个方法,我希望这些方法只能在类的实例对象上调用。 这是否意味着我应该使用静态方法? 例如 Obj x = new Obj(); x.someMethod 要么 Obj.someMethod (这是静态的方式?) 我很困惑!

无法对非静态方法进行静态引用

用Java构build多语言应用程序 从R.string资源XML文件插入String值时出现错误: public static final String TTT = (String) getText(R.string.TTT); 这是错误信息: 错误:无法从types上下文中对非静态方法getText(int)进行静态引用 这是如何造成的,我该如何解决?

为什么我不能在Java界面中定义静态方法?

这是一个例子: public interface IXMLizable<T> { static T newInstanceFromXML(Element e); Element toXMLElement(); } 当然这是行不通的。 但为什么不呢? 其中一个可能的问题是,当你打电话时会发生什么: IXMLizable.newInstanceFromXML(e); 在这种情况下,我认为它应该只是调用一个空的方法(即{})。 所有的子类将被迫实现静态方法,所以在调用静态方法时,它们都会很好。 那为什么不可能呢? 编辑:我想我正在寻找比“因为这是Java的方式”更深的答案。 是否有一个特定的技术原因,为什么静态方法不能被覆盖? 也就是说,为什么Java的设计者决定让实例方法可以覆盖,而不是静态方法? 编辑:我的设计的问题是我试图使用接口来执行编码约定。 也就是说,界面的目标是双重的: 我希望IXMLizable接口允许我将实现它的类转换为XML元素(使用多态性,工作正常)。 如果有人想要创建一个实现了IXMLizable接口的类的新实例,他们总是会知道会有一个newInstanceFromXML(Element e)静态构造函数。 有没有其他的方法来确保这一点,除了在界面中留言? 编辑: 从Java 8开始,现在允许在接口中使用静态方法。