using System.Collections.Generic;
public class DefaultBullet : IBullet
public virtual int GetDamage() {
public class SpecialBullet : DefaultBullet
public override int GetDamage()
public static void Main()
List<IBullet> bullets = new List<IBullet>();
for(int i = 0; i < count; i++) {
SpecialBullet bullet = new SpecialBullet();
DefaultBullet bullet = new DefaultBullet();
for(int y = 0; y < count; y++) {
IBullet bullet = bullets[y];
Console.WriteLine(bullet.GetDamage());