C# 类和对象

一、类和对象 核心概念

1. 类(模板)

类是抽象模板、图纸、模型

类本身不占用内存,只负责定义:有哪些字段、属性、方法

2. 对象(实例)

对象是根据类模板 new 出来的具体实例

所有由同一个类创建出来的对象,都属于同一种数据类型

一句话总结:类是模板,对象是模板造出来的具体个体。


二、类的定义语法规范

1. 书写位置

类必须写在 namespace 命名空间内部,不能直接写在最外层。

2. 语法格式

cs 复制代码
修饰符 class 类名
{
    // 类的成员:字段、属性、方法
}

3. 命名规范

  • 类名:大驼峰命名法(首字母大写)

  • 常用修饰符:public / internal


三、类的三大成员

类内部可以包含三种成员:字段、属性、方法

1. 字段(成员变量)

存储数据的变量,默认访问修饰符为 private 私有

cs 复制代码
public class People
{
    string name;     // 默认 private
    int age;         // 默认 private
    bool sex;        // 默认 private
    public string id;// public 公共字段
    private int _height; // 手动私有字段
}

重点不写修饰符 = private

2. 成员方法

描述对象的行为,分为:静态方法、非静态方法

(1)非静态方法(实例方法 / 对象方法)
  • 不带 static

  • 必须通过 对象名.方法名 调用

cs 复制代码
public void F1()
{
    Console.WriteLine("非静态无返回值方法");
}

// 调用
People zs = new People();
zs.F1();
(2)静态方法(类方法)
  • 带 static 关键字

  • 必须通过 类名.方法名 调用

  • 不属于对象,属于类本身

cs 复制代码
public static int F2(int a)
{
    return 100000;
}

// 调用
People.F2(10);

四、对象的创建方式

对象必须通过 new + 构造函数 创建

cs 复制代码
// 语法:类名 对象名 = new 类名();
People zs = new People();
zs.id = "002";

People ls = new People();
ls.id = "001";

每 new 一次,就会产生一个全新的独立对象,数据互不干扰。


五、访问修饰符(核心重点)

1. 四种访问权限

  • public 公共的:任何地方都能访问

  • private 私有的仅当前类内部可以访问(默认权限)

  • internal 内部的当前项目内 任意访问,跨项目无法访问

  • protected 受保护的:当前类和子类可以访问(后续继承讲解)

2. 代码验证 internal 权限

默认 class 修饰符为 internal

  • 同项目:可以直接 new 对象、访问成员

  • 跨项目:无法直接访问,需要手动添加项目引用 + 命名空间

cs 复制代码
internal class Program
{
    static void Main(string[] args)
    {
        //internal 在一个项目中可以相互访问
        Class1 c1 = new Class1();
        c1.age = 1;

        // 访问第4个课件People的类 属于internal 不能跨项目访问


        //如何添加引用?
        // 点击项目引用--->添加引用---->找到要添加项目----->选中,确定---->可以在当前项目引用中看到添加的东西
        //--->添加命名空间
        People p = new People();
        p.id = "002";
    }
}
public class Class1
{
    public int age;//字段
}

3. 跨项目访问步骤(必考实操)

  1. 右键项目 → 添加 → 项目引用

  2. 勾选需要引用的目标项目 → 确定

  3. 在当前代码顶部 引入命名空间

  4. 即可使用对方项目的 internal / public 类


六、静态方法 VS 非静态方法 终极区别(必背)

类型 是否带static 调用方式 归属
非静态方法 对象名.方法() 属于对象
静态方法 类名.方法() 属于类

七、全篇终极总结(背诵版)

  1. 类是模板,对象是实例,类不占内存,对象占内存

  2. 类的成员:字段(存数据)、方法(存行为)

  3. 字段默认 private,不写修饰符就是私有

  4. 非静态方法:对象调用;静态方法:类名调用

  5. internal:同项目随便用,跨项目需要引用

  6. public 全开放、private 仅内部、internal 限项目

相关推荐
丷丩1 小时前
MapLibre GL JS第25课:添加栅格瓦片源
开发语言·javascript·gis·mapbox·maplibre gl js
朔北之忘 Clancy1 小时前
2026 年 3 月青少年软编等考 C 语言二级真题解析
c语言·开发语言·c++·学习·青少年编程·题解·考级
Old Uncle Tom2 小时前
Harness Engineering 综述
java·开发语言·数据库
星原望野2 小时前
JAVA:策略模式的实战使用
java·开发语言·策略模式
码界筑梦坊2 小时前
282-基于Python的豆瓣音乐可视化分析推荐系统
开发语言·python·信息可视化·数据分析·flask·vue
LJianK12 小时前
java多态
java·开发语言·python
_Evan_Yao2 小时前
栈与队列:后进先出与先进先出的智慧
开发语言·python
z落落2 小时前
C# 构造函数(无参/有参/重载/this)+析构函数(终结器)|GC 垃圾回收
java·开发语言·c#
kkeeper~3 小时前
0基础C语言积跬步之自定义类型结构体
c语言·开发语言