抽象类与static和final

简单的小2 2013-10-30 10:02:15
为什么抽象类不能用static和final修饰?final是最终类不能被继承这个我明白,但是static也不能被继承是为啥呢?请明白人帮忙解释下,谢谢
...全文
379 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
guizhaiteng 2013-10-31
  • 打赏
  • 举报
回复
引用 2 楼 huxiweng 的回复:
static本来就不能修饰类啊!只有public, abstract & final 可以修饰类!
静态内部类是可以用static修饰的。
郑涛 2013-10-31
  • 打赏
  • 举报
回复
你说的不会是(非内部类吧),static使一个变量或方法成为这个class的属性,而不是这个class对应的所创建对象的属性,你在最外面独立的类用staitc代表什么意思
郑涛 2013-10-31
  • 打赏
  • 举报
回复
static 可以修饰类,只不过这个类要是一个类的成员变量
ifvlr 2013-10-30
  • 打赏
  • 举报
回复
被static修饰的方法在和没有static修饰的方法在内存中的位置不一样。。 被static修饰的方法属于类,是类自己的东西,不是给子类来继承的。就好像类是个房子,它的静态方法是里面的一面墙,每个人都可已在墙上画画,你画的东西别人也能看到,属于大家共同使用。你想通过继承来把这面墙拿走也不可能拿走,他是从属于类的。 而抽象方法本身没有实现,就是用来给子类继承,存在内存中的位置也不是一样的。用static修饰就不能被子类继承了。同样 你可以这么理解。 抽象方法相当于房子中地上的白纸,继承了它的子类就必须从地上拿一张白纸回去画画,你想怎么画怎么画。 一个相当于墙,你是拿不走的。一个相当于地上的纸,而且规定你实现了就必须拿走。 大概就是这么理解吧。
失落夏天 2013-10-30
  • 打赏
  • 举报
回复
static的用法: 1、static 关键字:可以用于修饰属性,也可以用于修饰方法,还可以用于修饰类。 2、static 修饰属性:无论一个类生成了多少个对象,所有这些对象共同使用唯一一份静态的成员变量;一个对象对该静态成员变量进行了修改,其他对象的该静态成员变量的值也会随之发生变化。如果一个成员变量是static 的,那么我们可以通过 类名 .成员变量名 成员变量名 成员变量名 的方式来使用它 的方式来使用它 (推荐使用这种方式) 。 3、static修饰方法: static 修饰的方法叫做静态。 对于静态方法来说,可以 使用 类名 .方法名的方式来访问。 4、静态方法只能继承,不重写(Override) 5、不能在静态方法中访问非静态成员变量; 6、不能在静态方法中使用this关键字。
zhuwagui 2013-10-30
  • 打赏
  • 举报
回复
顶楼上的回答
teemai 2013-10-30
  • 打赏
  • 举报
回复
static本来就不能修饰类啊!只有public, abstract & final 可以修饰类!
shayebuhui0 2013-10-30
  • 打赏
  • 举报
回复
static修饰的方法不能被重写,你懂得

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧