静态方法如何从抽象类继承?

fyswords 2011-12-09 05:02:09
要写一个抽象类用于派生事件处理,如果把父类写成
public abstract class A
{
//一些静态属性

public abstract void do();
}


那么子类的方法不能写成静态的
public class B extends A
{
public static void do()
{
…………
}
}


是我的思路不符合java的思想吗?
...全文
310 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
fyswords 2011-12-12
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 dxqrr 的回复:]

你把抽象类中的方法定义为static的就好了啊
[/Quote]
public abstract class A
{
//一些静态属性

public static void do()
{
return;
}
}


public class B extends A
{
public static void do()
{
…………
}
}


抽象类里写成static就不能用abstract了,似乎还是有些缺憾
dxqrr 2011-12-12
  • 打赏
  • 举报
回复
你把抽象类中的方法定义为static的就好了啊
fyswords 2011-12-12
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 wkpc60 的回复:]

通过类调用


新建的J2EE技术交流群,欢迎加入:200260812
[/Quote]
java都是类调用吧,能具体说说吗?
fyswords 2011-12-12
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 clarence0124 的回复:]

不行,也不必要。因为一般来说static方法都偏向于工具性质了。如果是具有通用性,没必要约束子类实现这样的静态方法。你应该重新考虑你的设计是不是有问题。
[/Quote]
是这样,我要写的是用hibernate对数据库进行增删改的工具类。我打算为每个表写一个工具类,其中的insert(),update(),delete()方法都是静态的。这些工具类拥有一个共同的父类,以便继承如获取session这样通用操作,以及约束增删改方法的方法名和返回值。

初学hibernate,不知道这样是否合理,而且貌似java也不支持。
clarence0124 2011-12-11
  • 打赏
  • 举报
回复
不行,也不必要。因为一般来说static方法都偏向于工具性质了。如果是具有通用性,没必要约束子类实现这样的静态方法。你应该重新考虑你的设计是不是有问题。
fyswords 2011-12-10
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 java641 的回复:]

静态方法也好,静态类也好,是不属于对象的,是属于类的,只有通过类才能调用
[/Quote]
我知道怎么调用静态方法

现在是想做一个抽象类约定子类的静态方法声明,是不是不能实现?
fyswords 2011-12-10
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 sgty_zp 的回复:]

一个类继承一个抽象类,必须实现抽象类的所有抽象方法
public static void do(){
…………
}
这个方法是从父类继承下来的
[/Quote]
父类的方法不是static的话,子类的貌似不能写成static覆盖
java641 2011-12-09
  • 打赏
  • 举报
回复
静态方法也好,静态类也好,是不属于对象的,是属于类的,只有通过类才能调用
运筹帷幄 2011-12-09
  • 打赏
  • 举报
回复
一个类继承一个抽象类,必须实现抽象类的所有抽象方法
public static void do(){
…………
}
这个方法是从父类继承下来的

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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