当前位置: 首页 > news >正文

6.C# —— 类与对象、数据类型、方法详解

目录一、类和对象1. 核心概念2. 类的定义3. 对象创建与赋值二、值类型与引用类型1. 值类型2. 引用类型三、方法的定义与调用1. 方法概念2. 方法定义3. 方法调用四、方法参数1. 普通参数2. 多参数3. 对象参数4. 默认参数五、核心总结一、类和对象1. 核心概念类对象的模板 / 蓝图是具有相同属性和行为的集合对象类的实例化是类具体的表现2. 类的定义关键字class命名规范大驼峰访问修饰常用public公共、internal内部public class Student { // 私有字段类内部使用 private int _age; // 公共属性外部访问 public int Age { get; set; } public string Name { get; set; } public string Sex { get; set; } }3. 对象创建与赋值方式 1先创建后赋值Student student new Student(); student.Name 张三; student.Age 10; student.Sex 男;方式 2创建时直接赋值Student lisi new Student() { Name 李四, Age 20, Sex 女 };二、值类型与引用类型1. 值类型存储栈内存保存值本身赋值拷贝一份新数据互不影响类型int、float、double、bool、char、枚举、结构体、DateTimeint a 10; int b a; // 拷贝值 a 30; // 修改ab不变 Console.WriteLine(b); // 102. 引用类型存储堆内存保存内存地址 / 引用赋值拷贝地址指向同一块内存一改全改类型string、class、对象、数组、集合Book b1 new Book(); b1.Name 远大前程; Book b3 new Book(); b3.Name 无; b1 b3; // 共用地址 b3.Name 无1; // 修改b3b1同步变化 Console.WriteLine(b1.Name); // 无1三、方法的定义与调用1. 方法概念封装一段功能代码实现代码复用组成修饰符 返回值 方法名 参数 方法体2. 方法定义// 公共静态无返回值无参方法 public static void Test() { // 方法体 Console.WriteLine(方法执行); }3. 方法调用静态方法类名.方法名()或直接调用非静态方法对象.方法名()Test(); // 直接调用静态方法 Program.Test(); // 类名调用四、方法参数1. 普通参数public static void Test(string name) { Console.WriteLine(name); } // 调用 Test(细雪);2. 多参数public static void Test1(int count, string name) { for (int i 0; i count; i) { Console.WriteLine(name); } }3. 对象参数public static void Test2(Dog dog) { Console.WriteLine(dog.Name : dog.Age); }4. 默认参数写在参数列表最后不传参使用默认值传参使用传入值public static void Test4(int count, string name, string lieji 劣迹明星) { Console.WriteLine(name 是 lieji); } // 调用 Test4(10, 你好); // 使用默认值 Test4(10, 理解, 榜样明星); // 使用传入值五、核心总结类与对象类是模板对象是实例字段私有、属性公开值类型存栈中赋值拷贝互不影响引用类型存堆中赋值传地址一改全改方法封装功能支持多参数、对象参数、默认参数静态方法通过类名直接调用无需创建对象
http://www.zskr.cn/news/1323208.html

相关文章:

  • MCP 爆火后,AI 岗位突然分成两类:会接工具的人,和会用向量引擎的人
  • 为什么你的Perplexity搜不到关键函数?深度逆向其索引构建流程(含Docker调试实录)
  • 如何在2026年继续玩Flash游戏?终极Flash浏览器解决方案指南
  • Visual C++运行库合集:解决Windows程序依赖的终极方案
  • 20260519紫题训练总结 - Link
  • IDEA里Git冲突别慌!手把手教你用Rebase和Merge搞定,附代码消失急救指南
  • 5个简单步骤:如何用MPC Video Renderer让你的普通显示器也能播放HDR电影
  • CQUPT 2025级 数据科学与大数据技术英才班 周测#08
  • 高效解决Windows HEIC缩略图显示:3步实现跨平台照片管理
  • Agent IDE 演进路线图:Claude Code 在商业项目中落地的 3 大技术拐点
  • 别只用它打断点!PLS UDE调试器里这个画图功能,让分析变量变化一目了然
  • Yuzu模拟器进阶设置指南:图形选项怎么调?多核CPU如何利用?让你的《王国之泪》帧数翻倍
  • Vitis HLS 综合报告(Syn Report)保姆级解读:从时序、资源到AXI接口,手把手教你读懂每一个表格
  • 洛谷P2765 思路分享(网络流,二分图匹配)
  • 嵌入式AI人才培养:产教融合如何破解软硬兼修难题
  • 时间序列预测实战:从M5竞赛看零售销量预测的挑战与策略
  • 优秘智能解析全国一体化算力网:底层架构如何赋能企业AI应用
  • 5/19
  • 嵌入式学习的第八天
  • 如何绕过甲骨文云注册时的地址验证风控?
  • UE5 Motion Warping插件实战:三步搞定RPG角色技能释放时的自动转向
  • 终极指南:7步掌握FanControl,打造完美静音散热系统
  • ArcMap新手必看:3分钟搞懂按属性、位置、图形选择要素的区别与实战
  • 铝箔生产线厚度在线监测系统完整方案
  • 霍尔木兹通行规则调整,影响卡塔尔LNG出口恢复
  • 终极指南:如何为OBS安装配置实时字幕插件实现无障碍直播
  • 小爱音箱终极音乐播放方案:3分钟搭建个人音乐服务器
  • 亲测嵊州随车吊口碑,复盘靠谱品牌,并附带联系方式 - 花开富贵112
  • ncmdumpGUI:专业音频解密工具实现网易云音乐跨平台播放自由
  • 信步SV1-H312A嵌入式主板:工业智能化核心硬件选型与实战指南