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

知乎 网站开发工具wordpress 分类目录 图像描述

知乎 网站开发工具,wordpress 分类目录 图像描述,认识电子商务网站建设技术,一个网站域名多少钱提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、类(Class)二、结构体(Struct)示例代码(定义类和结构体)类的继承代码示例&#xff08…

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、类(Class)
  • 二、结构体(Struct)
  • 示例代码(定义类和结构体)
  • 类的继承
    • 代码示例(类的继承)
  • 总结


前言

提示:这里可以添加本文要记录的大概内容:

写单片机习惯了结构体的方式定义数据;导致现在写C# 忽略了类的方式定义


一、类(Class)

  1. 引用类型:类是引用类型,当一个类的实例被创建时,变量指向堆上的对象
  2. 继承:类支持继承,可以派生自另一个类,并且可以实现多个接口。
  3. 构造函数:类可以有无参或有参构造函数,默认情况下会有一个无参构造函数。
  4. 成员访问修饰符:类可以包含私有、受保护、公共等不同访问级别的成员。
  5. 垃圾回收:由于类是引用类型,所以不再使用的类实例将由CLR的垃圾收集器自动清理。

二、结构体(Struct)

  1. 值类型:结构体是值类型,意味着它们直接存储数据,而不是引用数据的位置。因此,当一个结构体实例被赋值给另一个变量时,实际上是复制了整个结构体的数据。
  2. 不支持继承:结构体不能从其他类或结构体继承,也不能作为其他类型的基类型。但是,结构体可以实现接口。
  3. 构造函数:结构体可以拥有有参构造函数,但默认情况下不会提供无参构造函数。如果定义了任何构造函数,则必须显式地定义无参构造函数。
  4. 成员访问修饰符:结构体也可以包含私有、公共等不同访问级别的成员,但是默认字段和事件是私有的。
  5. 性能:因为结构体是值类型,所以在某些场景下(如频繁创建和销毁的小型数据结构),使用结构体可能比使用类更高效。

示例代码(定义类和结构体)

代码如下(示例):

// 定义一个类
public class Person
{public string Name { get; set; }public int Age { get; set; }// 构造函数public Person(string name, int age){Name = name;Age = age;}// 方法public void Introduce(){Console.WriteLine($"Hello, my name is {Name} and I'm {Age} years old.");}
}// 定义一个结构体
public struct Point
{public int X { get; set; }public int Y { get; set; }// 构造函数public Point(int x, int y){X = x;Y = y;}// 方法public void PrintPoint(){Console.WriteLine($"Point: ({X}, {Y})");}
}class Program
{static void Main(string[] args){// 使用类Person person1 = new Person("Alice", 30);Person person2 = person1;person2.Age = 35;person1.Introduce(); // 输出 "Hello, my name is Alice and I'm 35 years old."// 使用结构体Point point1 = new Point(1, 2);Point point2 = point1;point2.Y = 10;point1.PrintPoint(); // 输出 "Point: (1, 2)"point2.PrintPoint(); // 输出 "Point: (1, 10)"}
}

类的继承

C#中的类的继承是指一个类(派生类)从另一个类(基类)中继承属性和方法。这允许代码的重用和扩展,使派生类可以继承基类的特性,并在其基础上添加或覆盖特定的行为。

代码示例(类的继承)

// 基类
public class Animal
{public string Name { get; set; }public void Speak(){Console.WriteLine("Animal speaks");}
}// 派生类
public class Dog : Animal
{public string Breed { get; set; }public new void Speak(){Console.WriteLine("Dog barks");}
}// 另一个派生类
public class Cat : Animal
{public string Color { get; set; }public void Meow(){Console.WriteLine("Cat meows");}
}// 程序入口
class Program
{static void Main(string[] args){// 创建一个Dog对象Dog myDog = new Dog();myDog.Name = "Fido";myDog.Breed = "Golden Retriever";// 调用基类的Speak方法myDog.Speak(); // 输出: Dog barks// 创建一个Cat对象Cat myCat = new Cat();myCat.Name = "Kitty";myCat.Color = "White";// 调用基类的Speak方法myCat.Speak(); // 输出: Animal speaks// 调用派生类的Meow方法myCat.Meow(); // 输出: Cat meows}
}

总结

结构体对内存友好,用完及时释放,但是对面向对象编程不友好,当大量数据时操作繁琐复杂(不是老手不建议使用);类的方式适合面向对象编程,特别是处理大量数据的时候更能体现其价值;

http://www.yayakq.cn/news/229907/

相关文章:

  • wordpress首页显示字数插件零基础学seo难吗
  • 江西建设监督网新网站wordpress的主机
  • 兼职游戏网站怎么做得力文具网站建设策划书
  • 甘肃省住房和城乡建设厅注册中心网站首页先做网站装修还是先买虚拟主机
  • 建设银行网站打不开用什么浏览器国有平台公司是什么意思
  • 哪个网站可以做相册息烽县住房和城乡建设局网站
  • 网站后台用什么语言合适成为短视频的app有哪些
  • 网站目录是什么分类信息网站织梦模板
  • 推广网站有哪些网站建设框架怎么写
  • 厦门手机网站建设是什么意思抖音网站建设哪家好
  • 全国房地产网站网站项目需要什么
  • html5手机移动app网站制作教程上海网站推广找哪家
  • 实用网站建设期末考试dw做的网站怎么全屏
  • 北京品牌建设网站网站网络推广公司
  • 在线做venn图网站wordpress左侧菜单怎么添加
  • 外包小程序公司杭州优化外包哪里好
  • 网站开发哪里好百度推广竞价技巧
  • 什么是网站前台小公司企业简介怎么写
  • 科技软件公司网站模板下载网站制作技巧
  • 河南网站建设定制成都网站建设详细内容
  • 潮阳网站建设公司想学网站建设优化去哪
  • html网站建设源码wordpress用户验证失败
  • 做彩票网站推广网站做关键词排名有必要吗
  • wordpress站长之家怎么做捐款网站
  • 绿色环保材料网站模板html代码编辑器
  • win 2003 网站 管理员开福区网站建设中
  • 城市建设理论研究官方网站服务好质量好的app开发
  • 怎么做网站卖东西公司简介怎么写吸引人
  • 山西科技网站建设旅游网站建设平台分析
  • cms站群管理系统wordpress图集功能