首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

来解释一下

2012-01-07 
高手进来解释一下我今天读了以下2段代码,有所不清楚,望告诉作答.谢谢usingSystemusingSystem.Collections

高手进来解释一下
我今天读了以下2段代码,有所不清楚,望告诉作答.谢谢

using   System;
using   System.Collections.Generic;
using   System.IO;
using   System.Runtime.Serialization;
using   System.Runtime.Serialization.Formatters;
using   System.Runtime.Serialization.Formatters.Binary;
using   System.Text;

namespace   KPIReportsApp
{
        [Serializable]
        public   abstract   class   Settings <T>
        {
                protected   abstract   T   GetDefault();

                protected   abstract   string   GetFilename();

                protected   T   Load()
                {
                        if   (File.Exists(GetFilename()))
                        {
                                BinaryFormatter   bf   =   new   BinaryFormatter();
                                using   (FileStream   fs   =   new   FileStream(GetFilename(),   FileMode.OpenOrCreate))
                                {
                                        return   (T)   bf.Deserialize(fs);
                                }
                        }
                        return   GetDefault();
                }

                public   void   Save()
                {
                        BinaryFormatter   bf   =   new   BinaryFormatter();
                        using   (FileStream   fs   =   new   FileStream(GetFilename(),   FileMode.OpenOrCreate))
                        {
                                bf.Serialize(fs,   this);
                        }
                }
        }
}


using   System;
using   System.Collections.Generic;
using   System.Text;

namespace   KPIReportsApp
{
        [Serializable]
        public   class   DailyReportFormSettings   :   Settings <DailyReportFormSettings>
        {
                public   static   DailyReportFormSettings   Current()


                {
                        return   new   DailyReportFormSettings().Load();
                }

                protected   override   string   GetFilename()
                {
                        return   "DailyReportFormSettings.cfg ";
                }

                protected   override   DailyReportFormSettings   GetDefault()
                {
                        DailyReportFormSettings   def   =   new   DailyReportFormSettings();
                        def.Cell1   =   "D15 ";
                        return   def;
                }

                private   string   cell1;
 
                public   string   Cell1
                {
                        get   {   return   cell1;   }
                        set   {   cell1   =   value;   }
                }
        }
}

这2段代码的作用是为了保存config而写的.
只是有些基础知识不是很懂.
在定义类的时候用 <T> 表示什么?   另外,这种方式的定义有什么好处?
Serializable这里就不要解释了,谢谢

[解决办法]
http://dev.yesky.com/msdn/494/2437994.shtml
楼主可以参考一下!

热点排行