在Java语言中,嵌套类可以是static,也可以不是。如果它们是static,则它们不包含对包含实例的指针的引用(它们也不再称为内部类,它们称为嵌套类)。
在不需要引用时忘记创建嵌套类static可能会导致垃圾收集或逸出分析的问题。
有没有可能让匿名内部类也成为static?或者编译器会自动找出这一点(它可以,因为不能有任何子类)?
例如,如果我做一个匿名的比较器,我几乎不需要外部的引用:
Collections.sort(list, new Comparator<String>(){
int compare(String a, String b){
我用java编写了这个代码,它是由netbeans编写的
class sample
{
public static int x;
public int y;
sample()
{
x=0;
}
}
public class JavaApplication1 {
/**
* @param args the command line arguments
*/
sample cchild=new sample();
public static void main(String[] args) {
这两个类之间的区别是什么?
public static class MyClass
{
public static string SayHello()
{
return "Hello";
}
}
public static class MyClass
{
public string SayHello()
{
return "Hello";
}
}
第二个SayHello方法是否也是静态的,因为它位于静态类上?如果是这样,当在静态类中定义方法时,是否有理由在方法上包含static关键
我当然可以在任何类中拥有类,所以在我的main方法中。我还可以访问它的方法和属性。
但是这个代码不起作用。我知道main是static,,所以是这样的:
主要方法正在运行,它是否是构造任何类的方法,甚至包含它的类。
然后,main应该启动,构造包含它的类,然后在其中创建任何类或方法。
package holamundo;
public class HolaMundo {
public class AnotherClass {
// Class body
}
public void method () {
// Code