c#封装成员变量和成员方法和访问修饰符

1 成员变量

声明在类语句块中用来描述对象的特征,可以是任意变量类型

数量不做限制,是否赋值根据需求来决定。

如果在类中声明一个和自己相同类型的成员变量时,不能对他进行实例化。

public Person gridFriend = null;//不能== new Person();,不能实例化,会内存溢出

复制代码
enum E_Sex
{
    Man,
    Woman,
}
struct Position
{
    int x;
    int y;
}
class Pet
{
}
class Person
{
    public string name;
    public E_Sex sex;  
    public Person gridFriend = null;
    public Person[] boyFriend;
    Pet pet=new Pet();
}

2 成员方法

声明在类语句块中描述对象的行为的规则和函数。

声明规则相同 ,受到访问修饰符规则影响 返回值参数不做限制 方法数量不做限制

注意

成员方法不加static

成员方法 必须实例化出对象 ,再通过对象来使用

成员方法受到访问修饰符影响

成员方法 必须实例化出对象 再通过对象来使用 相当于该对象执行了某个行为

复制代码
class Person
{
    public void Speak(string str)
    {
        Console.WriteLine("{0}说{1}",name,str);
    }
}
Person p = new Person();
p.name = "fei";
p.Speak("love you");

3访问修饰符

public 全都能

private 仅限定义它的类内部访问,默认成员访问级别。

protected 定义类及其派生类可访问,适合继承体系。

4 默认值

值类型来说,数字类型都是0 bool类型是false char类型null

引用类型 都是null 打印出来看不到

得到默认值的方法 例 default(int)

相关推荐
hez201010 小时前
在 .NET 上构建超大托管数组
c#·.net·.net core·gc·clr
雨落倾城夏未凉6 天前
第四章c#方法-参数数组和可选参数(16)
后端·c#
唐青枫7 天前
线程不是越多越快:C#.NET Thread 生命周期、同步与后台工作线程实战
c#·.net
唐青枫8 天前
别只会反射:C#.NET Emit 动态生成代码实战详解
c#·.net
咕白m6258 天前
.NET 环境下 Word 超链接批量提取方案
c#·.net
用户91721561902118 天前
C# 通信协议增量解析:用状态机处理半包和粘包
c#
小码编匠9 天前
C# 工控上位机必备:数据转换工具类与十个核心模块
后端·c#·.net
唐青枫11 天前
别再乱用 StartNew:C#.NET TaskFactory 任务调度实战详解
c#·.net
Artech11 天前
[MAF预定义的AIContextProvider-03]ChatHistoryMemoryProvider——赋予Agent从经验中学习的能力
ai·c#·agent·memory·maf
Scout-leaf13 天前
C#摸鱼实录——IoC与DI案例详解
c#