小弟java入门,在创建一个class.java里用了static修饰class,报错modifier static not allowed here。
但是我在主文件里却可以用static修饰class,这是为什么?
类的名字不要和关键字重名,不要用 class.java
可以用
class1.java
public static class class1
静态类一般作为内部类使用
https://www.cnblogs.com/xf-686/archive/2019/06/27/11098274.html
一个类在虚拟机启动时候就可以被加载,但是如内部类这样的类就不会,通常需要通过外部类调用才行,如果想直接使用内部内,这时候可以声明为static的:
// 外部类不能再用static修饰
class A {
private int count = 0;
// 这样修饰之后可以使用直接new获取该对象,而不需要通过外部对象
static class Inner{
}
}
可以看看我这static用法详解的文章:
有关static的用法总结详解:https://blog.csdn.net/u012011079/article/details/115799789
(欢迎各位大佬斧正,里面包含了设计过程的static、面向对象的static、类模板含有static的解析)