javascript

java

python

c#

android

node.js

reactjs

c++

php

html

jquery

css

git

.net

ios

ruby-on-rails

sql

c

string

ruby

Python类静态方法

我想创建一种实用程序类,它仅包含可通过名称类前缀调用的静态方法。 看起来我做错了:)

这是我的小课:

class FileUtility():

    @staticmethod
    def GetFileSize(self, fullName):
        fileSize = os.path.getsize(fullName)
        return fileSize

    @staticmethod
    def GetFilePath(self, fullName):
        filePath = os.path.abspath(fullName)
        return filePath

现在,我的“主要”方法是:

from FileUtility import *
def main():
        path = 'C:\config_file_list.txt'
        dir = FileUtility.GetFilePath(path)
        print dir

我收到一个错误:main

这里有几个问题:

  1. 我究竟做错了什么? 静态方法是否可以通过类名调用?
  2. 我是否真的需要一个实用程序类,或者是否有其他方法可以在Python中实现相同的目的?
  3. 如果我尝试更改main中的代码,则会得到:main

新的main

from FileUtility import *
def main():
    objFile = FileUtility()
    path = 'H:\config_file_list.txt'
    dir = objFile.GetFilePath(path)
    print dir
trans by 2019-11-16T11:54:48Z

java-什么时候我想使我的私有类静态?

通常,将私有类声明为静态有什么好处?

在什么情况下,我想使用以下一项而不是另一项?

private static class Foo
{
    ...
}

VS

private class Foo
{
    ...
}
trans by 2019-11-16T03:26:55Z

android-返回应用程序时,静态变量为null

在我的应用程序中,有一个静态变量,当我从外部浏览器返回到我的应用程序时,该变量被设置为null。 如果我启动的外部网页足够复杂,似乎该应用程序或应用程序的某些部分将被杀死。

如果应用程序被完全杀死,然后从可以进行的主要活动中重新启动,但是重新启动是从启动浏览器的活动中进行的-但这并不意味着要设置应用程序状态,因此在访问null静态变量时会崩溃 。 这对我来说是六分之一的设备问题,因此我需要一些建议。

是否有设置标志来防止此行为?

trans by 2019-11-14T03:05:56Z

静态方法线程

我有一个静态计时器类,任何网页都将调用该计时器类,以计算构造每个页面需要花费多长时间。

我的问题是静态类线程安全吗? 在我的示例中,并发用户是否会导致我的开始和停止时间出现问题? 例如,其他线程覆盖了我的开始值和结束值。

public static class Timer
{
    private static DateTime _startTime;
    private static DateTime _stopTime;    

    /// <summary>
    /// Gets the amount of time taken in milliseconds
    /// </summary>
    /// <returns></returns>
    public static decimal Duration()
    {
        TimeSpan duration =  _stopTime - _startTime;
        return duration.Milliseconds;
    }

    public static void Start()
    {
        _startTime = DateTime.Now;
    }

    public static void Stop()
    {
        _stopTime = DateTime.Now;
    }
}

此类应为非静态类吗?

(此类将从asp.net主页上调用。)

trans by 2019-11-12T09:30:50Z

麻烦声明静态枚举,C#

嗨,我正在尝试声明一个静态枚举,如下所示:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;

namespace Lds.CM.MyApp.Controllers
{
    public class MenuBarsController : Controller
    {
        // Menu Bar enums
        public static enum ProfileMenuBarTab { MainProfile, Edit, photoGallery }

        public ActionResult cpTopMenuBar(string tabSelected)
        {
            ...            

”但是我收到以下错误:“修饰符'static'对此项目无效。”我知道这很简单,但似乎看不到问题。 非常感谢!

trans by 2019-11-11T16:13:00Z

Django:将标记静态标记成块标记是不可能的吗?

下面的代码使错误。我如何解决此问题?

提前致谢 :)

{% block header %}
    <link rel="stylesheet" href="{% static 'shop/style.css' %}" />
{% endblock %}

错误输出:

  • TemplateSyntaxError:无效的块标记:“静态”,预期为“ endblock”
trans by 2019-11-09T07:39:19Z

java-为什么应该以静态方式访问静态字段?

public enum MyUnits
{
    MILLSECONDS(1, "milliseconds"), SECONDS(2, "seconds"),MINUTES(3,"minutes"), HOURS(4, "hours");

    private MyUnits(int quantity, String units)
    {
        this.quantity = quantity;
        this.units = units;
    }

    private int quantity;
    private  String units;

 public String toString() 
 {
    return (quantity + " " + units);
 }

 public static void main(String[] args) 
 {
    for (MyUnits m : MyUnits.values())
    {
        System.out.println(m.MILLSECONDS);
        System.out.println(m.SECONDS);
        System.out.println(m.MINUTES);
        System.out.println(m.HOURS);
    }
 }
}

这是指帖子..无法回复或评论任何这样创建的新帖子。 为什么是我的

System.out.println(m.MILLSECONDS);

发出警告-应该以静态方式访问静态字段Units.MILLISECONDS吗?谢谢。

trans by 2019-11-08T17:26:39Z

我可以覆盖和重载Java中的静态方法吗?

我想知道:

  1. 为什么在Java中不能覆盖静态方法?
  2. 可以在Java中重载静态方法吗?
trans by 2019-11-07T13:05:21Z

我如何获取静态方法中的会话变量的值?

我正在使用带有jQuery的ASP.NET页面方法。...如何在C#中的静态方法中获取会话变量的值?

protected void Page_Load(object sender, EventArgs e)
{
    Session["UserName"] = "Pandiya";
}

[WebMethod]
public static string GetName()
{
    string s = Session["UserName"].ToString();
    return s;
}

当我编译这个我得到错误:

非静态字段,方法或属性“ System.Web.UI.Page.Session.get”的对象引用是必需的

trans by 2019-11-05T13:45:16Z

模板静态变量

我不明白,为什么如果我们在标头中定义普通(非模板)类的静态变量,则会出现链接器错误,但是如果模板都正常工作,而且所有翻译单元中都只有一个静态变量实例, :

它是模板头(template.h):

// template.h
template<typename T>
class Templ {
public:
  static int templStatic;
};

template<typename T> Templ<T>::templStatic = 0;

这是使用模板的第一个单元(unit1.cpp)

// unit1.cpp
#include "template.h"

int method1() {
  return Templ<void>::templStatic++;
}

此处的第二个单位(unit2.cpp):

// unit2.cpp
#include "template.h"
int method2() {
  return Templ<void>::templStatic++;
}

最后,main.cpp:

// main.cpp
#include <iostream>
int method1();
int method2();

int main(int argc, char** argv) {
  std::cout << method1() << std::endl;
  std::cout << method2() << std::endl;
}

编译,链接和执行此代码后,我们将得到以下输出:

0
1

那么,为什么在模板都正常的情况下(以及预期的那样)呢? 编译器或链接器如何处理此问题(我们可以在单独的编译器调用中编译每个.cpp文件,然后通过校准将它们链接到链接器,因此编译器和链接器不会同时“看到”所有.cpp文件)?

PS:我的编译器:msvcpp 9(但在mingw上也进行了检查)

trans by 2019-10-24T11:42:54Z

C ++中的静态变量

我想知道头文件中的静态变量与类中声明的静态变量之间的区别是什么。 在头文件中声明静态变量时,其范围限于.h文件或所有单元。 同样,在类中声明静态变量时,通常会在.cpp文件中初始化静态变量吗? 那是否意味着静态变量范围限制为2个编译单元?

trans by 2019-10-15T18:35:23Z

静态变量初始化

C ++保证编译单元(.cpp文件)中的变量按声明顺序进行初始化。 对于编译单元的数量,此规则分别适用于每个单元(我的意思是类之外的静态变量)。

但是,变量的初始化顺序在不同的编译单元之间是不确定的。

我在哪里可以看到有关gcc和MSVC的此顺序的一些解释(我知道依赖它是一个非常糟糕的主意-只是要了解在迁移到新的GCC专业版和不同的OS时,遗留代码可能存在的问题)?

trans by 2019-10-15T03:35:46Z

java-Kotlin中的静态初始化块

Kotlin中的静态初始化块等效于什么?

我了解Kotlin的设计宗旨是不带静电。 我正在寻找具有相同语义的东西-首次加载该类时,代码将运行一次。

我的特定用例是,我想从Android AppCompat库启用DayNight功能,并且说明说要在Application类的静态初始化块中放入一些代码。

trans by 2019-10-13T14:38:17Z

在GCC中,函数静态变量是否是线程安全的?

在示例代码中

void foo()
{
  static Bar b;
  ...
}

用GCC编译是否可以保证以线程安全的方式创建和初始化b

在gcc的手册页中,找到-fno-threadsafe-statics命令行选项:

不要发出多余的代码来使用   在C ++ ABI中为   局部线程安全初始化   静力学 您可以使用此选项   在代码中稍微减少代码大小   不需要是线程安全的。

  1. 这是否意味着GCC默认情况下局部静态变量是线程安全的? 因此没有理由采取明确的保护措施,例如 与pthread_mutex_lock/unlock吗?

  2. 如何编写可移植的代码-如何检查编译器是否将添加其防护措施? 还是最好关闭GCC的此功能?

trans by 2019-10-09T17:50:11Z

静态变量和常量变量有什么区别?

有人可以解释staticconst变量之间的区别吗?

trans by 2019-10-09T11:10:49Z

静态C ++类成员何时初始化?

似乎没有简单的答案,但是关于何时可以访问静态类字段可以安全地做出任何假设吗?

编辑:唯一安全的假设似乎是在程序开始之前初始化了所有静态函数(调用main)。 因此,只要我不从其他静态初始化代码中引用静态变量,就不必担心吗?

trans by 2019-10-08T20:48:44Z

c-何时在全局变量前使用static关键字?

有人可以解释何时应该在头文件中定义的全局变量或常量之前使用static关键字吗?

例如,假设我有一个带有以下内容的头文件:

const float kGameSpriteWidth = 12.0f;

是否应该在const前面有static? 使用static的最佳做法是什么?

trans by 2019-10-08T15:19:19Z

如何在C ++中初始化静态const成员?

是否可以在构造函数之外初始化静态const值? 可以在找到成员声明的位置将其初始化吗?

class A {
private:
  static const int a = 4;
  /*...*/
};
trans by 2019-10-08T10:15:46Z

java-为什么.class不调用Class中的静态块?

这是我的代码:

public class StupidClass {
    static {
        System.out.println("Stupid class loaded!");
    }
}

还有我单独运行的测试。

import org.junit.Test;

public class StupidTest {
    @Test
    public void foo() throws ClassNotFoundException {
        final Class<?> stupidClass = Class.forName("StupidClass");
        System.out.println(stupidClass.getSimpleName());
    }

    @Test
    public void bar() throws ClassNotFoundException {
        final Class<StupidClass> stupidClassClass = StupidClass.class;
        System.out.println(stupidClassClass.getSimpleName());
    }
}

当我运行测试foo时,我会看到:

Stupid class loaded!
StupidClass

但是当我运行测试栏时,我看到的只是:

StupidClass

引用此页面。

类对象是由Java Virtual自动构造的   机器作为类加载并通过调用defineClass方法   在类加载器中。

所以我的理解是,在测试栏中,加载了Stupid类,否则我会看到一个空值吗? 所以创建Class对象是因为类本身已加载。

现在引用此页面

当JVM(类加载器-   具体来说)加载StaticClass(第一次出现)   在代码中引用)。

因此,我期望看到“愚蠢的类已加载!” 测试栏中也显示文本,但我不是。

也引用了《用Java思考》

Candy,Gum和Cookie的每个类都有一个静态子句,该子句是   在第一次加载类时执行。

看起来不是很准确。

我错过了什么?

trans by 2019-09-29T06:59:33Z

Objective C-接口实现中静态变量的含义是什么?

在接口的实现中定义时,我不太了解静态变量。 在方法中,我确实了解它们与局部变量的区别,但是在直接在实现中定义时却没有。

看这些例子。 这两者实际上有什么区别?

#include "MyClass.h"

@implementation MyClass
int myInt;
...
@end

和:

#include "MyClass.h"

@implementation MyClass
static int myInt;
...
@end

在这两种情况下,所有方法都可以看到myInt,并且如果我解释了我正确运行的测试,则在两种情况下myInt在该类的不同实例中都将是相同的变量。

trans by 2019-09-27T17:57:24Z

1 2 3 4 5 6 7 下一页 共7页