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)

相关推荐
Elastic 中国社区官方博客9 分钟前
我们如何通过 70 多个拉取请求,将 OpenTelemetry Java agent 迁移到 invokedynamic
java·大数据·开发语言·elasticsearch·搜索引擎·全文检索·es
tyn18822 分钟前
记录本地安装nacos服务的方法及异常
java·开发语言
步行cgn1 小时前
Spring MVC 视图机制的核心接口与类
java·开发语言·后端·spring·mvc
传奇开心果编程2 小时前
【Rust入门练中学】第5课:引用与借用
开发语言·rust·引用·编程语言理论·通用编程语言·借用
qetfw2 小时前
Bash 变量:export、位置参数与默认值展开验证
linux·开发语言·chrome·bash
电子云与长程纠缠2 小时前
UE5魂系游戏开发教程05
开发语言·学习·游戏·ui·ue5
cspttty2 小时前
2027风险管理岗准备路线:数学与应用数学如何补齐金融、SQL与Python
开发语言·python·金融
我命由我123452 小时前
Python 开发 - Python 的 pathlib
java·开发语言·后端·python·学习·java-ee·学习方法
严谨的麻辣烫3 小时前
Python HTTP 连接池怎么用?从连接复用到请求异常排查
开发语言·python·http·requests·网络排查
码林鼠3 小时前
flutter状态管理入门教程-Riverpod
开发语言·javascript·flutter