我定义了几个接口,
public interface IBaseEnumerator{
void Basefunction();
}public interface ILineEnumerator:IBaseEnumerator{
void Linefunction();
}public interface IWordEnumerator:IBaseEnumerator{
void Wordfunction();
}public class A:ILineEnumerator,IWordEnumerator{
public void Basefunction(){
} public void Linefunction(){
} public void Wordfunction(){
}
}这样子是没有问题的,关键是现在Basefunction()只有一个,那么两个接口ILineEnumerator,IWordEnumerator的行为就完全一样了,这并不是我想要得,我希望对于不同的接口行为是不一样的,不知道高手怎么解决,或者是C#和Java一样,根本无法解决。后来我把接口改写如下:
public interface ILineEnumerator{
void Basefunction();
}public interface IWordEnumerator{
void Basefunction();
}public class A:ILineEnumerator,IWordEnumerator{
public void Basefunction(){
}
}可是仍然无法达到我想要得结果,
Basefunction这个方法对于IWordEnumerator和ILineEnumerator来说,抽象意义是一样的,所以接口定义明也就完全一样,如果是非要改成不一样的,在意义上就不那么直观了。各位大虾们,有谁知道的请告诉我啊,高分求助,不够在加!!!!
public interface IBaseEnumerator{
void Basefunction();
}public interface ILineEnumerator:IBaseEnumerator{
void Linefunction();
}public interface IWordEnumerator:IBaseEnumerator{
void Wordfunction();
}public class A:ILineEnumerator,IWordEnumerator{
public void Basefunction(){
} public void Linefunction(){
} public void Wordfunction(){
}
}这样子是没有问题的,关键是现在Basefunction()只有一个,那么两个接口ILineEnumerator,IWordEnumerator的行为就完全一样了,这并不是我想要得,我希望对于不同的接口行为是不一样的,不知道高手怎么解决,或者是C#和Java一样,根本无法解决。后来我把接口改写如下:
public interface ILineEnumerator{
void Basefunction();
}public interface IWordEnumerator{
void Basefunction();
}public class A:ILineEnumerator,IWordEnumerator{
public void Basefunction(){
}
}可是仍然无法达到我想要得结果,
Basefunction这个方法对于IWordEnumerator和ILineEnumerator来说,抽象意义是一样的,所以接口定义明也就完全一样,如果是非要改成不一样的,在意义上就不那么直观了。各位大虾们,有谁知道的请告诉我啊,高分求助,不够在加!!!!
{
void Basefunction();
}public interface ILineEnumerator:IBaseEnumerator
{
void Linefunction();
new void Basefunction();
}public interface IWordEnumerator:IBaseEnumerator
{
void Wordfunction();
new void Basefunction();
}public class A:ILineEnumerator,IWordEnumerator
{
void ILineEnumerator.Linefunction()
{
} void ILineEnumerator.Basefunction()
{
} void IWordEnumerator.Basefunction()
{
}
void IBaseEnumerator.Basefunction()
{
} public void Linefunction()
{
} public void Wordfunction()
{
}
}
void Basefunction();
}public interface ILineEnumerator{
void Linefunction();
}public interface IWordEnumerator{
void Wordfunction();
}public class A:ILineEnumerator,IWordEnumerator,IBaseEnumerator
我已经结帖了,在管理里面点数已经给出去了,直接看的时候好像没有给出去阿,m(__)m我重新开个帖子谢谢大家。http://community.csdn.net/Expert/topic/4118/4118455.xml?temp=.1016504