请教marker interface的问题,高分悬赏!!!

supreme1008 2008-09-18 07:51:06
请问java中,marker interface 的具体作用是什么?例如serializable这个就是一个接口,但他没有任何的methods和field,那么JVM如何知道这个接口就是要序列化?是不是java中就直接定义了这个接口就是一个序列化的功能,只要implements这个接口就实现的序列化?如果这样的话,那么我们自己定义了一个marker interface的话,那么这个接口没有任何的methods和field,而且java也没有定义说我们自己定义的这个marker interface就要实现某种功能,那么我们implements这个接口有什么意义呢?我又看过网上的某些说明,就是implements这个自己定义的接口,然后用instanceof来判断是否implements了这个接口,但这样也好像没什么意义啊,因为我们自己定义的这个接口 根本没有任何的methods和field,所以请问各位,究竟这个自己定义的marker interface有什么作用啊???
...全文
209 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
justinavril 2008-09-20
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 KAKUKYOWU 的回复:]
引用 1 楼 justinavril 的回复:
我个人的理解啊:
这可能就类似于基础函数一样 举个例子就是 你把1+2 那程序怎么就返回3了呢 那是底层代码的事了 估计是低层实现的 但是对编程人员是透明的吧


兄台,你终于回国了!
[/Quote]嗯 是啊 真爽!
justinavril 2008-09-20
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 KAKUKYOWU 的回复:]
引用 1 楼 justinavril 的回复:
我个人的理解啊:
这可能就类似于基础函数一样 举个例子就是 你把1+2 那程序怎么就返回3了呢 那是底层代码的事了 估计是低层实现的 但是对编程人员是透明的吧


兄台,你终于回国了!
[/Quote]嗯 是啊 真爽!
supreme1008 2008-09-19
  • 打赏
  • 举报
回复
既然不知道是干什么的话。那么为什么还要定义这个接口~~?
究竟定义这个接口有什么作用啊~~~?
yangdu328 2008-09-19
  • 打赏
  • 举报
回复
实现了serializable接口就表示遵循“Java(TM) 对象序列化规范”,可以进行序列化,而你定义的接口呢?java没有定义相应的规范,更谈不上遵守,当然不知道你这个接口是干什么的。
KAKUKYOWU 2008-09-19
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 justinavril 的回复:]
我个人的理解啊:
这可能就类似于基础函数一样 举个例子就是 你把1+2 那程序怎么就返回3了呢 那是底层代码的事了 估计是低层实现的 但是对编程人员是透明的吧
[/Quote]

兄台,你终于回国了!
qusic 2008-09-19
  • 打赏
  • 举报
回复
这样的接口属于标记接口,即表示该对象属于某一个类型,
实现serializable就是说我这个类是可以序列化的
这样的接口就是为类做一个标记.
justinavril 2008-09-18
  • 打赏
  • 举报
回复
我个人的理解啊:
这可能就类似于基础函数一样 举个例子就是 你把1+2 那程序怎么就返回3了呢 那是底层代码的事了 估计是低层实现的 但是对编程人员是透明的吧

62,615

社区成员

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

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