问题描述
请教大家,接口不是只是定义方法的名称吗,没有定义方法的实现,但有些类继承像IComparable这种接口后,可以用CompareTo方法,但CompareTo方法不是应该没有定义具体实现吗?那一个类实现一个接口到底有什么用呢?
解决方案
解决方案二:
《抽象类和接口的关系对比》抽象类抽象类主要用来定义一些抽象的属性和方法,留待子类根据自己的情况实现这些属性和方法抽象类不能生成实例,即不能new一个抽象类的实例抽象类可以被继承,除非继承该抽象类的子类仍声明为抽象的,否则就必须实现这个抽象类的所有抽象属性和方法一个类只能继承一个抽象类,如果需要实现多个类的抽象方法,必须使用接口子类与抽象类是is关系接口接口主要用来定义一些抽象的属性和方法,留待实现类根据自己的情况实现这些属性和方法接口不能生成实力,即不能new一个接口的实例抽象类可以被实现,除非实现该接口的类声明为抽象的,否则就必须实现这个接口的所有抽象属性和方法一个类可以实现多个接口实现类与接口是has关系
解决方案三:
你要自己给出CompareTo的实现
解决方案四:
好东西..学习了!!
解决方案五:
如有这样一个泛型类publicclassLinkedList<K,T>whereK:IComparable{Node<K,T>m_Head;publicLinkedList(){m_Head=newNode<K,T>();}publicvoidAddHead(Kkey,Titem){Node<K,T>newNode=newNode<K,T>(key,item,m_Head.NextNode);m_Head.NextNode=newNode;}TFind(Kkey){Node<K,T>current=m_Head;while(current.NextNode!=null){if(current.Key.CompareTo(key)==0)break;elsecurrent=current.NextNode;}returncurrent.Item;}}其中CompareTo方法是因为实现了IComparable的接口后方可使用,但CompareTo方法我并没有定义它的实现,但已经可以用了,难道IComparable已经已经定义过该方法的实现了?
解决方案六:
引用1楼zhoufoxcn的回复:
《抽象类和接口的关系对比》抽象类抽象类主要用来定义一些抽象的属性和方法,留待子类根据自己的情况实现这些属性和方法抽象类不能生成实例,即不能new一个抽象类的实例抽象类可以被继承,除非继承该抽象类的子类仍声明为抽象的,否则就必须实现这个抽象类的所有抽象属性和方法一个类只能继承一个抽象类,如果需要实现多个类的抽象方法,必须使用接口子类与抽象类是is关系接口接口主要用来定义一些抽象…
详细
解决方案七:
[align=center]去我的空间下载接口的视频教程o(∩_∩)o...http://download.csdn.net/user/ws_hgo/[/align]
解决方案八:
关注!!
解决方案九:
限制类型参数K必须实现IComparable接口