可以在Java中将构造函数标记为final,abstract或static吗?
除public,protected和private构造函数外,不允许任何其他修饰符。
当将final关键字与方法或构造函数一起使用时,不能覆盖它。但是,Java中的构造函数不能被覆盖,因此,不需要在构造函数中使用final关键字。
由于无法覆盖构造函数,因此如果将其抽象化,则无法为其提供主体。因此,不能在构造函数中使用abstract关键字。
如果要在实例化类之前调用类的成员,则需要在其之前使用static。但是,在实例化时会隐式调用承包商。因此,在构造函数中使用static是没有意义的。
示例
public class Sample {
public final static Sample(){
System.out.println("Hello");
}
public static void main(String args[]) throws Exception{
Sample obj = new Sample();
}
}输出结果
C:\Sample>javac Sample.java
Sample.java:2: error: modifier static, final not allowed here
public final static Sample(){
^
1 error热门推荐
6 保研的祝福语简短
10 年轻20岁祝福语简短
11 朋友结婚祝福语信息简短
12 女孩婚礼贺卡祝福语简短
13 30段点歌简短祝福语
14 虎年春节祝福语图文简短
15 写给后妈祝福语大全简短
16 简短回复生日祝福语
17 校长送毕业祝福语简短
18 毕业立体贺卡祝福语简短