此代码生成适用于:

1、C#

2、Visual Basic

功能:快速生成实现接口所需的代码。

时机:想要继承接口时。

原因:可以手动逐一实现各个接口,但此功能可自动生成所有方法签名。

操作说明

1、将光标置于红色波浪线上,该线条表示已引用接口但部分必需成员尚未实现。

C#:

1.jpg

Visual Basic:

2.jpg

2、接下来,执行以下操作之一:

键盘

按 (Ctrl+.) 触发“快速操作和重构”菜单。

鼠标

右键单击并选择“快速操作和重构”菜单。

将鼠标悬停在红色波形曲线上,然后单击出现的 error light bulb图标。

单击 error light bulb 图标(如果文本光标已在具有红色波形曲线的行上,它会出现在左边缘)。

3、从下拉菜单中选择“实现接口”

1.jpg

进行选择前,使用预览窗口底部的“预览更改”。

通过预览窗口底部的“文档”、“项目”和“解决方案”链接,跨实现此接口的多个类创建适当的方法签名。

将创建接口的方法签名以供实现。

C#:

interface IMyInterface
{
	void Method1();
	int Method2(int value);
}

class MyClass : MyAbstractClass
{
	public override void Method1()
	{
		throw new NotImplementedException();
	}
	
	public override Int32 Method2(Int32 value)
	{
		throw new NotImplementedException();
	}
}

Visual Basic:

Class MyImplementation
	Implements IMyInterface
		
	Public Sub Method1() Implements IMyInterface.Method1
		throw New NotImplementedException()
	End Sub
	
	Public Function Method2(value As Integer) As Integer Implements IMyInterface.Method2
		throw New NotImplementedException()
	End Function
End Class

(仅限 C#)使用“显式实现接口”选项,以接口名称作为各个生成方法的开头,避免名称冲突。

interface IMyInterface
{
	void Method1();
	int Method2(int value);
}

class MyClass : IMyInterface
{
	void IMyInterface.Method1()
	{
		throw new NotImplementedException();
	}
	
	Int32 IMyInterface.Method2(Int32 value)
	{
		throw new NotImplementedException();
	}
}