java中,abstract类可以有final修饰吗,求大师指点

abstract类中可以有非abstract方法,但该方法可不可以被final修饰

与普通类相比,抽象类可以有abstract方法,也可以有非abstract方法。抽象方法只允许声明,不允许实现,而且不允许使用final和abstract同时修饰一个方法。
抽象类不能用new运算符创建对象:如果一个非抽象类时某个抽象类的子类,那么它必须重写父类的抽象方法,给出方法体,即在子类中将abstract方法重新声明,但必须去掉abstract修饰,同时要保证声明的方法名字、返回类型、参数个数和类型与父类的abstract方法完全相同。这就是为什么不允许使用final和abstract同时修饰一个方法的原因。
做上转型对象:抽象类也可以没有abstract方法;如果一个抽象类时另一个抽象类的子类,它可以重写其父类的abstract方法,也可以继承这个abstract方法。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-11-03
abstract修饰的类为抽象类,抽象类中的抽象方法必须被重写,但final修饰的方法又规定不能重写,所以abstract修饰的类或方法 不能使用final修饰本回答被提问者采纳
第2个回答  2014-11-03
要知道final的特性,变量赋值不能被再次赋值,被修饰的方法无法被继承,abstract
的非abstract一般是抽取公共方法来实现,子方法直接用就可以,如果abstract中的方法被final
修饰但是不能被继承,毫无意义
第3个回答  2014-11-03
应该不可以,final修饰了的类不能被继承,所以一个抽象类不能被继承就失去了任何意义了。