小编shs*_*mer的帖子

字符串连接:concat()vs"+"运算符

假设字符串a和b:

a += b
a = a.concat(b)
Run Code Online (Sandbox Code Playgroud)

引擎盖下,它们是一样的吗?

这里以concat反编译为参考.我希望能够反编译+运算符以查看它的作用.

public String concat(String s) {

    int i = s.length();
    if (i == 0) {
        return this;
    }
    else {
        char ac[] = new char[count + i];
        getChars(0, count, ac, 0);
        s.getChars(0, i, ac, count);
        return new String(0, count + i, ac);
    }
}
Run Code Online (Sandbox Code Playgroud)

java string concatenation

476
推荐指数
8
解决办法
91万
查看次数

什么是Java EE?

我意识到它实际上转换为Java Enterprise Edition.但我要问的是这究竟意味着什么?当一家公司需要Java EE经验时,他们真正需要什么?有EJB经验吗?有Java Web应用程序的经验?

我怀疑这意味着不同的人有不同的东西,而且定义是主观的.

java-ee

212
推荐指数
6
解决办法
15万
查看次数

来自匿名内部类的外部类的关键字

在以下代码段中:

public class a {
    public void otherMethod(){}
    public void doStuff(String str, InnerClass b){}
    public void method(a){
        doStuff("asd",
            new InnerClass(){
                public void innerMethod(){
                    otherMethod();
                }
            }
        );
    }
}
Run Code Online (Sandbox Code Playgroud)

是否有一个关键字来引用内部类的外部类?基本上我想要做的是outer.otherMethod(),或类似的东西,但似乎找不到任何东西.

java anonymous-inner-class

198
推荐指数
2
解决办法
8万
查看次数

如何在Eclipse IDE中修改键盘快捷键?

标题或多或少都说明了一切.具体来说,我越来越恼火,为了运行蚂蚁脚本,我必须使用Alt+ Shift+ x, q. 但我认为如果我拥有这种力量,我会做很多事情,我会改变快捷方式,为目前没有它们的东西添加快捷方式.

eclipse keyboard-shortcuts

152
推荐指数
4
解决办法
8万
查看次数

Layman的条款中的抽水引理是什么?

我看到了这个问题,并对抽取引理是什么感到好奇(维基百科没有多大帮助).

我理解这基本上是一个理论证明,必须是真实的,以便语言在某个类中,但除此之外,我并没有真正得到它.

有人试图以非数学家/ comp sci博士学位理解的方式在相当精细的层面上解释它吗?

theory proof pumping-lemma

80
推荐指数
4
解决办法
3万
查看次数

在Java关键部分中,我应该同步什么?

在Java中,在代码中声明关键部分的惯用方法如下:

private void doSomething() {
  // thread-safe code
  synchronized(this) {
    // thread-unsafe code
  }
  // thread-safe code
}
Run Code Online (Sandbox Code Playgroud)

几乎所有的块都同步 this,但是有什么特别的原因吗?还有其他可能吗?是否有关于同步对象的最佳实践?(比如私人实例Object?)

java multithreading synchronized

70
推荐指数
5
解决办法
4万
查看次数

使用SVN而不是CVS有什么好处?

我的公司正在使用CVS作为源控制的事实标准.但是,我听说很多人都说SVN更好.

我知道SVN比较新,但除此之外,我对它的好处并不熟悉.

我正在寻找的是两个系统的良好,简洁的比较,注意到Java/Eclipse开发环境中每个系统的优点和缺点.

svn cvs version-control

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

如何找出并更改Java Maven用于执行的版本?

运行我们的Maven构建时,我的团队成员在执行时会收到错误.但是,当我们java -version从她的命令行运行时,它表示Java 1.6.0_26.Maven正在使用Java 5,这个错误显然似乎在尖叫.

我如何找出并更改Maven正在使用的Java版本?

3个可能重要的说明:

  1. 这是在命令行执行的,而不是使用Eclipse插件
  2. JAVA_HOME设置为Java 1.6 JDK
  3. 使用Maven 2.2.1

java maven

56
推荐指数
2
解决办法
5万
查看次数

如何使用固定数量的工作线程实现简单线程

我正在寻找实现以下内容的最简单,最直接的方法:

  • 主程序实例化工作线程以执行任务.
  • 只能n同时运行任务.
  • n到达,没有更多的工人开始,直到运行的线程数降回到低于n.

java concurrency multithreading

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

Helper/Utility Classes应该是抽象的吗?

我经常发现自己将类中的常见行为提取到helper/utility类中,这些类只包含一组静态方法.我经常想知道我是否应该将这些类声明为抽象类,因为我无法真正想到实例化这些类的正当理由?

优点和缺点是宣布这样一个类是抽象的.

public [abstract] class Utilities{

   public static String getSomeData(){
       return "someData";
   }

   public static void doSomethingToObject(Object arg0){
   }
}
Run Code Online (Sandbox Code Playgroud)

java abstract-class

45
推荐指数
3
解决办法
1万
查看次数