using System.Collections.Generic;
public static void ApplyScans(IList<IScan> scannables){
foreach(IScan scannable in scannables){
public static void ValidateTransfers(IList<TransferScan> transferScans){
foreach(TransferScan scan in transferScans){
Console.WriteLine("Name: "+scan.name());
public static void Main()
IList<IScan> myScannables = new List<IScan>(){
new TransferScan("Three")
ApplyScans(myScannables);
ValidateTransfers(myScannables);
public class TransferScan: IScan {
private readonly string _name;
public TransferScan(string name){
public string name(){ return _name; }
Console.WriteLine("Scanned: " + _name);