黑马程序员技术交流社区

标题: 关于抽象函数 [打印本页]

作者: 刘勇强    时间: 2013-2-18 14:09
标题: 关于抽象函数
本帖最后由 刘勇强 于 2013-2-21 21:03 编辑

教程里有一句“不能有抽象构造函数或抽象静态方法”


不能有抽象构造函数还稍微能理解,但后半句抽象静态方法搞不清
抽象方法在接口或抽象类中,定义为静态后,如果定义另一个抽象之类实现这个抽象静态方法行不

作者: 范天成    时间: 2013-2-18 14:53
本帖最后由 范天成 于 2013-2-18 15:00 编辑

静态是不能够被继承的,也谈不上被重写,而接口中的抽象方法必须全被被重写,所以接口中没有定义静态抽象方法
作者: 杨玲    时间: 2013-2-18 18:21
呵呵,这么分析吧
,静态方法的生命周期很长,它不管自己所在的类是否有实例都可以使用,只要在调用前加上类名(类名.静态方法名()),就可以了,也就是说它可以独立于所在的类的实例对象而存在.
抽象方法是什么呢?在一个抽象类中抽象方法其实只有一个声明并没有定义.如下:
  1. public abstruct void function();
复制代码
它只有方法声明而没有方法体,它都必须要子类来实现才会真正存在.

那么你说一个可以独立于所在类的对象而存在的方法(静态)还能满足必须要有子类了以后才能存在(抽象)这样的条件吗?
作者: 刘勇强    时间: 2013-2-18 21:14
杨玲 发表于 2013-2-18 18:21
呵呵,这么分析吧
,静态方法的生命周期很长,它不管自己所在的类是否有实例都可以使用,只要在调用前加上类名( ...

thx   有时候想着想着就范迷糊 跟钻牛角尖里了  一样


作者: 刘勇强    时间: 2013-2-18 21:22
杨玲 发表于 2013-2-18 18:21
呵呵,这么分析吧
,静态方法的生命周期很长,它不管自己所在的类是否有实例都可以使用,只要在调用前加上类名( ...

thx   有时候想着想着就范迷糊 跟钻牛角尖里了  一样


作者: 杨玲    时间: 2013-2-18 22:13
刘勇强 发表于 2013-2-18 21:22
thx   有时候想着想着就范迷糊 跟钻牛角尖里了  一样

呵呵,晕着晕着就好点了





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2