C#(C Sharp)学习笔记_类【十五】

embedded/2024/9/25 6:24:27/

什么是类?

  1. 类(Class)是面向对象程序设计(OOP,Object-Oriented Programming)实现信息封装的基础。类是一种用户定义的引用数据类型,也称类类型。每个类包含数据说明和一组操作数据或传递消息的函数。类的实例称为对象。

类的三大特性

  1. 封装 (Encapsulation)
    封装是将数据(属性)和行为(方法)结合在一起的机制,同时限制对对象内部实现的直接访问。在C#中,封装通常是通过使用访问修饰符来实现的,比如private、protected、internal和public。封装的主要目的是隐藏对象的内部状态和复杂性,只暴露出一个清晰和简洁的接口供外部调用。
public class MyClass
{private int myPrivateField; // 私有字段,外部无法直接访问public int MyProperty{get { return myPrivateField; }set { myPrivateField = value; }}public void MyMethod(){// 方法实现}
}
  1. 继承 (Inheritance)
    继承是一种可以让新创建的类(子类或派生类)接收另一个类(父类或基类)的属性和方法的机制。继承支持代码的重用,并允许创建分层的类结构。在C#中,使用:操作符来表示继承关系。
public class BaseClass
{public void BaseMethod(){// 方法实现}
}public class DerivedClass : BaseClass
{public void DerivedMethod(){// 方法实现}
}
  1. 多态 (Polymorphism)
    多态是指允许不同类的对象对同一消息做出响应的能力,即同一个接口,不同的表现。在C#中,多态性主要通过虚方法(virtual methods)、抽象类(abstract classes)和接口(interfaces)来实现。
public abstract class Animal
{public abstract void MakeSound();
}public class Dog : Animal
{public override void MakeSound(){Console.WriteLine("Woof!");}
}public class Cat : Animal
{public override void MakeSound(){Console.WriteLine("Meow!");}
}

类的组成

  1. 类由 类名属性方法 组成,同时我们也可以将它们称作为“类的成员
  • 类名:类名是类的标识符,用于定义和区分不同的类。
  • 属性:类的属性是描述类的状态和特征的重要元素,它们可以通过不同的方式进行定义和访问,具体取决于所使用的编程语言和面向对象的设计原则。
  • 方法:方法是类的成员函数,方法的设定赋予了类更多功能,比如我们要完成某个事,只需要提前将方法写好,就可以在同一种事情上充分利用方法。
public class ClassName
{// 类的属性(字段)private int myField; // 私有字段public string MyProperty { get; set; } // 公共属性// 类的构造函数public ClassName() {// 默认构造函数}public ClassName(string name) {// 带参数的构造函数}// 类的方法public void MyMethod(){// 方法的实现}// 可以包含其他方法、属性、事件等
}

http://www.ppmy.cn/embedded/33287.html

相关文章

QT中的容器

Qt中的容器 关于Qt中的容器类,下面我们来进行一个总结: Qt的容器类比标准模板库(STL)中的容器类更轻巧、安全和易于使用。这些容器类是隐式共享和可重入的,而且他们进行了速度和存储的优化,因此可以减少可…

基于springboot的社区医院信息平台源码数据库

基于springboot的社区医院信息平台源码数据库 随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。本文介绍了社区医院信息平台的开发全过程。通过分析社区医院信息平台管理的不足,创建了一个计算机管理社区医院信息平…

解决clickhouse 启动报错

解决clickhouse 启动报错 Error response from daemon: driver failed programming external connectivity on endpoint clickhouse-server (b42457434cebe7d8ad024d31e4fd28eae2139bb2b5046c283bea17ce4398d5b0): Error starting userland proxy: listen tcp4 0.0.0.0:8123: …

1.Spring Security介绍

spring security 功能 1.认证authentication,系统认为用户是否登录。 2.授权authorization,判断用户是否有权限去做某些事情。 spring security的缺点是重量级的。 还有另外一个安全认证权限框架是Apache下轻量级权限控制框架Shrio框架。 shiro的缺…

EPAI手绘建模APP资源管理和模型编辑器3

t) 立方体 图 42 模型编辑器-立方体 i. 修改立方体底部中心位置。 ii. 修改立方体的长、宽、高。 u) 圆柱体 图 43 模型编辑器-圆柱体 i. 修改圆柱体底部中心位置。 ii. 修改圆柱体半径。 iii. 修改圆柱体高度。 iv. 修改圆柱体角度。角度决定了圆柱体沿着圆周方向有效区域…

java spring 09 Bean的销毁过程

1.Bean销毁是发送在Spring容器关闭过程中的 AnnotationConfigApplicationContext context new AnnotationConfigApplicationContext(AppConfig.class);UserService userService (UserService) context.getBean("userService");userService.test();// 容器关闭cont…

快速在windows搭建本地SFTP服务器

目录 下载工具freeSSHd配置freeSSHd启动SFTP服务连接SFTP相关连接:快速在windows搭建本地FTP服务器 下载工具freeSSHd 官网地址:http://www.freesshd.com/?cttdownload,好像已经打不开了,自己搜集了一个资源备用: 链…

一、RocketMQ基本概述与部署

RocketMQ基本概述与安装 一、概述1.MQ概述1.1 用途1.2 常见MQ产品1.3 MQ常用的协议 2.RocketMQ概述2.1 发展历程 二、相关概念1.基本概念1.1 消息(Message)1.2 主题(Topic)1.3 标签(Tag)1.4 队列&#xff0…