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
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);
}
}