A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 张昊镭 黑马帝   /  2012-4-7 16:42  /  2263 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

abstract不能和哪些关键字共存,最好能简单说下原因方便理解.
目前只知道不能和static共存.因为假如抽象类能实例化,那这个类中加了static的方法就能被类名直接调用,但是这个方法没方法体,没有实际意义,所以abstract和static不能共存.

4 个回复

倒序浏览
密封类就是将一个类封闭起来,所以一个密封类是不能继承的类,因此sealed关键字和abstract关键字不能同时使用。
回复 使用道具 举报
为什么不能在abstract方法前加static呢?
在没有实例化类的情况下(不讨论abstract类不能实例化),加了static后可以直接通过Class.method()来调用该方法,这个方法都没方法体,你觉得调用这样的方法有实际的意义么。(编程语言就是为了解决生活中的问题,而这个问题在生活中是没有意义的那编程语言也不会去实现它,如: 一台电视机上有一个电源按钮(方法),而这个按钮按下却没有任何作用,你说这样的按钮有实际的意义吗?)
回复 使用道具 举报
final被final修饰的类不能有子类,而被abstract修饰的类一定是一个父类。抽象类中的抽象方法要被使用,必须是由子类复写所有的抽象方法后,建立子类对象调用。
private 假如抽象类中的抽象方法被私有了,就不为子类所知,子类就无法复写,而抽象方法出现的就是需要被复写。
static被static修饰的方法,可以直接类名调用,可是抽象方法运行没意义
回复 使用道具 举报
苍天之下,厚土之上,竟有如此奇人异士、文人墨客!讥讽于谈笑间,笑骂于无形中,层次之高,境界之深,非我等所能匹及,偶像啊!!!仿高人此文,照作一篇,以表仰慕之情。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马