using System;using System.Collections.Generic;using System.Text;namespace staticway...{ //定义基类 class CommaFile ...{ public CommaFile(string filename) ...{ Console.WriteLine("[CommaFile] " + "file name = {0} ",filename); } } //定义一个枚举结构,模拟用户,供应商和销售商,这些人员需要处理具体的文件 enum tableid ...{ customers, suppliers, vendor }; //从基类CommaFile中派生出DbTable class DbTable : CommaFile ...{ //使用静态方法 static string GetFileName(tableid id) ...{ string filename; switch (id) ...{ case tableid.customers: filename = "customer.txt"; //用户的文件 break; case tableid.suppliers: filename = "suppliers.txt"; //供应商的文件 break; case tableid.vendor: filename = "vendor.txt"; //销售商的文件 break; default: //如果都不是,将报错 throw new ArgumentException("[DaTable. " + "GetFilename] 不能解析表名"); } return filename; } //DbTable的构造函数 public DbTable(tableid id) : base(GetFileName(id)) ...{ Console.WriteLine("[DbTable.DbTable] " + "id = {0} ",id.ToString()); } } class Program ...{ static void Main(string[] args) ...{ Console.WriteLine("[Main] 初始化用户表的对象"); //实例化一个DbTable的对象,将调用静态方法GetFileName DbTable derived = new DbTable(tableid.customers); } }}