您的位置:首页 > 编程语言 > C#

C#中的访问修饰符 部分类 密封类 序列化 反序列化

2015-05-20 01:11 393 查看
C#中的访问修饰符:

public------------------:公开的共有的。

private-----------------:私有的,只能在当前类的内部访问。

protected---------------:受保护的,只能在当前类和该类的子类中访问。

internal----------------:默认的。只能在当前项目中访问,在同一个项目中,internal和public的权限是一样的。不加访问修饰符默认就是internal。

protected internal------:默认受保护的。

序列化:就是将对象转换为二进制

反序列化:就是将二进制转换为对象。

序列化和反序列化的作用:传输数据。

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.IO;

using System.Runtime.Serialization.Formatters.Binary;

namespace SerializeDeserialize

{

class Program

{

static void Main(string[] args)

{

//执行序列化操作

//Person p = new Person("张三", 18, '男');

//using (FileStream fs = new FileStream(@"C:\Users\Administrator\Desktop\new.txt", FileMode.OpenOrCreate, FileAccess.Write))

//{

// BinaryFormatter bf = new BinaryFormatter();

// bf.Serialize(fs, p);

//}

//执行反序列化操作

using (FileStream fsRead = new FileStream(@"C:\Users\Administrator\Desktop\new.txt", FileMode.OpenOrCreate, FileAccess.Read))

{

BinaryFormatter bf = new BinaryFormatter();

Person p = (Person)bf.Deserialize(fsRead);

Console.WriteLine("姓名:{0},年龄:{1},性别:{2}", p.Name, p.Age, p.Gender);

Console.ReadKey();

}

}

}

[Serializable] //序列化标识

class Person

{

private string _name;

public string Name

{

get { return _name; }

set { _name = value; }

}

private int _age;

public int Age

{

get { return _age; }

set { _age = value; }

}

private char _gender;

public char Gender

{

get { return _gender; }

set { _gender = value; }

}

public Person(string name, int age, char gender)

{

this._name = name;

this._age = age;

this._gender = gender;

}

}

}

部分类:partial

密封类:sealed 可以继承其他类,但是不可以被继承

partial class Test

{

private string _name = "sdfl";

}

partial class Test

{

public void Say()

{

Console.WriteLine(_name);

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: