小编Sle*_*led的帖子

Maven在理论和实践中做了什么?什么时候值得使用?

我即将开始一个Java项目只是为了练习.我读过关于Maven的内容,但我实际上并不了解它何时被使用.

你能给我一些实用的建议吗?Maven有很多帮助吗?Maven对我的项目实际做了什么?

java maven

153
推荐指数
3
解决办法
10万
查看次数

如果非同步静态方法不修改静态类变量,那么它们是否安全?

我在想,如果您有一个静态方法同步,但并没有修改任何静态变量是线程安全的?如果方法在其中创建局部变量怎么办?例如,以下代码是否是线程安全的?

public static String[] makeStringArray( String a, String b ){
    return new String[]{ a, b };
}
Run Code Online (Sandbox Code Playgroud)

因此,如果我有两个线程连续和同时调用这个方法,一个与狗(说"大丹狗"和"公牛狗")和另一个与猫(说"波斯语"和"暹罗语")我会得到猫和狗在同一个数组?或者猫和狗不会同时在同一个方法的调用内?

java concurrency static multithreading thread-safety

144
推荐指数
3
解决办法
6万
查看次数

你能打破一个Groovy"每个"关闭?

是否可以break从Groovy .each{Closure},或者我应该使用经典循环?

groovy

142
推荐指数
3
解决办法
11万
查看次数

使用Python删除目录中的所有文件

我想删除目录中包含扩展名的所有文件.bak.我怎么能用Python做到这一点?

python file-io

141
推荐指数
4
解决办法
20万
查看次数

如何更有效地使用@Nullable和@Nonnull注释?

我可以看到@Nullable@Nonnull注释可以在防止有用NullPointerException秒,但他们并不很远传播.

  • 在一个间接层之后,这些注释的有效性完全下降,所以如果你只添加一些注释,它们就不会传播得很远.
  • 由于这些注释没有得到很好的执行,因此存在假设标记的值@Nonnull不为空并因此不执行空检查的危险.

下面的代码会导致标有一个参数@Nonnullnull没有提出任何投诉.它会NullPointerException在运行时抛出.

public class Clazz {
    public static void main(String[] args){
        Clazz clazz = new Clazz();

        // this line raises a complaint with the IDE (IntelliJ 11)
        clazz.directPathToA(null);

        // this line does not
        clazz.indirectPathToA(null); 
    }

    public void indirectPathToA(Integer y){
        directPathToA(y);
    }

    public void directPathToA(@Nonnull Integer x){
        x.toString(); // do stuff to x        
    }
}
Run Code Online (Sandbox Code Playgroud)

有没有办法使这些注释更严格地执行和/或进一步传播?

java annotations nullable nullpointerexception code-standards

120
推荐指数
7
解决办法
14万
查看次数

113
推荐指数
6
解决办法
5万
查看次数

为什么没有定义Java的布尔基元大小?

Java虚拟机规范说有布尔有限的支持原始类型.

没有专门针对布尔值操作的Java虚拟机指令.相反,Java编程语言中对布尔值进行操作的表达式被编译为使用Java虚拟机int数据类型的值.

以上暗示(虽然我可能误解了它)在操作布尔值时使用int数据类型,但这是一个32位内存构造.假设布尔值仅代表1位信息:

  • 为什么不使用byte或short类型作为布尔值而不是int的代理?
  • 对于任何给定的JVM,什么是最可靠的方法来找出用于存储布尔类型的确切内存量?

java boolean

108
推荐指数
3
解决办法
6万
查看次数

如何在Python中记录类属性?

我正在编写一个轻量级类,其属性旨在可公开访问,并且有时仅在特定实例中被覆盖.在Python语言中没有为类属性或任何类型的属性创建文档字符串的规定.记录这些属性的可接受方式是什么?目前我正在做这样的事情:

class Albatross(object):
    """A bird with a flight speed exceeding that of an unladen swallow.

    Attributes:
    """

    flight_speed = 691
    __doc__ += """
        flight_speed (691)
          The maximum speed that such a bird can attain.
    """

    nesting_grounds = "Raymond Luxury-Yacht"
    __doc__ += """
        nesting_grounds ("Raymond Luxury-Yacht")
          The locale where these birds congregate to reproduce.
    """

    def __init__(self, **keyargs):
        """Initialize the Albatross from the keyword arguments."""
        self.__dict__.update(keyargs)
Run Code Online (Sandbox Code Playgroud)

这将导致类的docstring包含初始标准docstring部分,以及通过扩充赋值为每个属性添加的行__doc__.

虽然在文档字符串样式指南中似乎没有明确禁止这种样式,但它也没有作为选项提及.这里的优点是它提供了一种方法来记录属性及其定义,同时仍然创建一个可呈现的类docstring,并避免编写重复来自docstring的信息的注释.我仍然有点生气,我必须实际写两次属性; 我正在考虑使用docstring中值的字符串表示来至少避免重复默认值.

这是否是对特设社区公约的毁灭性违反?好吗?有没有更好的办法?例如,可以创建包含属性值和文档字符串的字典,然后__dict__在类声明的末尾将内容添加到类和docstring中; 这样可以减少两次输入属性名称和值的需要. 编辑:我认为,这最后一个想法实际上是不可能的,至少不是没有从数据动态构建整个类,这似乎是一个非常糟糕的想法,除非有其他理由这样做. …

python documentation docstring class class-attributes

101
推荐指数
4
解决办法
6万
查看次数

Java曾经有过Pair类吗?

我记得不正确,或曾经做过Java,曾经提供过Pair类作为其API的一部分?

java

99
推荐指数
8
解决办法
15万
查看次数

OAuth 2.0授权标头

我想开发一个封装OAuth 2.0功能的SDK.我已经检查了OAuth 1.0和2.0之间的差异,我对Authorization Header(1.02.0)有一些混淆,OAuth 1.0协议参数可以使用HTTP"Authorization"标头传输,但我找不到当前描述的OAuth 2.0草案.

OAuth 2.0是否支持授权标头?

在OAuth 1.0中,您的标题如下所示:

Authorization: OAuth realm="Example",
    oauth_consumer_key="0685bd9184jfhq22",
    oauth_token="ad180jjd733klru7",
    oauth_signature_method="HMAC-SHA1",
    oauth_signature="wOJIO9A2W5mFwDgiDvZbTSMK%2FPY%3D",
    oauth_timestamp="137131200",
    oauth_nonce="4572616e48616d6d65724c61686176",
    oauth_version="1.0"
Run Code Online (Sandbox Code Playgroud)

http oauth-2.0

88
推荐指数
2
解决办法
16万
查看次数