相关疑难解决方法(0)

Java中的对象创建语句不允许使用单行循环.为什么?

以下程序没有自己的重要性.它只计算使用类计数器内部的静态字段通过使用for循环创建的对象数,如下所示.

package temp;

final class Counter
{
    private static int cnt;

    public Counter()
    {
        cnt++;
    }

    public static int show()
    {
        return(cnt);
    }
}

final public class Main
{
    public static void main(String[] args)
    {
        for (int i=0;i<50;i++)
        {
            Counter counter=new Counter();
        }

        /*for (int i=0;i<50;i++)
            Counter counter=new Counter();*/

        System.out.print("\nNumber of objects constructed:->"+Counter.show()+"\n\n");
    }
}
Run Code Online (Sandbox Code Playgroud)

这里唯一的问题是注释for循环意味着与上面的for循环相同(同样的东西也应用于while循环)根本不起作用导致编译时错误,表明" 不是语句 "意味着在这种特殊情况下,即使for循环只包含一个语句,这对括号也是必需的!为什么?

java

19
推荐指数
2
解决办法
1039
查看次数

在没有"循环"的java中使用标签

我一直以为标签必须只用于循环,但似乎不是.给这样的代码:

public class LabelTest {
    public static void main(String[] args) {
        label1: System.out.println("");
        label2: LabelTest t = new LabelTest();  
    }                                               
}
Run Code Online (Sandbox Code Playgroud)

当标记为"label1"的编译行编译时,"label2"处的代码会出错.为什么?为什么我要标记不是"循环"的语句?

java loops labels

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

代码中的url没有破坏构建

在演示期间,我看到了一段测试代码,开发人员在代码中粘贴了一个url.当开发人员构建应用程序时一切正常,但我们都非常好奇为什么编译器接受了url作为一行.

public class Foo
{
   // Why doesn't 'http://www.foo.org' break the build?
    public void Bar()
    {
        http://www.foo.org
        Console.WriteLine("Do stuff");
    }
}
Run Code Online (Sandbox Code Playgroud)

为什么上面的代码构建?编译器是否将该行视为注释?

c#

12
推荐指数
1
解决办法
449
查看次数

这个Java代码如何编译?

一位同事遇到了一些看似这样的代码,无法理解它是如何编译的:

class FooClass {
  public static void bar(String arg) {
     System.out.println("arg = " + arg);
     http://www.google.com
     System.out.println("Done!");
  }
}
Run Code Online (Sandbox Code Playgroud)

基本上,在方法中间粘贴了一个随机URL,但javac并不关心.

我们解决了所以如果没有其他人发现,我会发布答案,但我觉得发帖很有意思.

java puzzle

6
推荐指数
2
解决办法
1226
查看次数

Java标签用法

在某个地方浏览java好文章,我发现这样的代码完美编译.

public int myMethod(){
    http://www.google.com
    return 1;
}
Run Code Online (Sandbox Code Playgroud)

描述说http:该词将被视为标签和//www.google.com评论

我不知道Java Label在循环外是如何有用的?在什么情况下应该使用Java Label外部循环?

java

5
推荐指数
1
解决办法
5926
查看次数

为什么Java源代码中的超链接不会产生编译错误?

在源代码中,我忘了在链接之前添加注释.例如,以下代码:

public class HelloWorld
{
  public static void main(String[] args)
  {
    http://www.example.com/random-link-here
    System.out.println("Hello World!");
  }
}
Run Code Online (Sandbox Code Playgroud)

为什么编译?不知何故无法弄清楚它做了什么...它像Goto +评论的标签,但Java没有goto ...

java

2
推荐指数
2
解决办法
78
查看次数

标签 统计

java ×5

c# ×1

labels ×1

loops ×1

puzzle ×1