面向对象(三大特性--多态)

本文详细介绍了C#中的多态特性和封装原理。解释了多态在强类型语言中的应用,包括编译时多态(函数重载)和运行时多态(通过方法重写实现)。同时探讨了封装如何提高类的安全性,并概述了C#中的其他核心概念如继承、构造函数等。

多态是强类型语言中使用是的一种特性

C#是一种强类型语言,弱类型语言可以随意转换类型,所以不存在多态

JS就是一种弱类型语言

例如:

 var a = 6;

此处a的数据类型是根据后面赋值的值的类型来确定的,后面是int型,a就是int型,后面是string类型,a 就是string类型。

 

封装
目的:保护类,让类更安全
做法:将成员变量变为私有,做相应的方法或属性来间接操作成员变量

函数重载:
条件:函数名相同,参数个数或者参数类型不同


构造函数:
写法:没有返回类型,函数名是类名
特点:写法特殊 执行时间特殊、
作用:在造对象的时候,对对象里面的成员进行初始化

this关键字:
this代表该对象,不是代表该类

访问修饰词:
public 公有的
protected 受保护的
private 私有的

继承:
概念:子类可以继承父类的一切
特点:单继承 一个子类只能有一个父类,一个父类可以有多个子类

base关键字


sealed关键字:密封类,该类不可被继承

部分类 partial 可以将一个类拆分成多个部分,分别放在多个文件内

namespace 命名空间 相当于虚拟文件夹

使用这个关键字来扩展类

(3)多态
一、编译多态
函数重载


二、运行多态
概念:当父类引用指向子类实例的时候,由于子类对父类的方法进行了重写,在调用该方法的时候表现出的不同就称为多态

Ren r = new Ren();


子类的方法会覆盖父类的方法。

class DongWu
{
public virtual string Eat()//虚方法
{
return "该动物在吃饭";
}
}

class Dog : DongWu
{
public override string Eat()//重写
{
return "狗在吃骨头";
}
}

相当于把父类的方法修改了

★条件:必须要有继承,父类引用指向子类实例,子类必须对父类的方法进行重写

里氏代换原则:如果有一个地方需要使用到父类对象,可以用子类的对象 替换它。

C#是强类型语言


弱类型语言可以随意转换类型
JS:弱类型语言
var a = 6;

 

转载于:https://www.cnblogs.com/bloodPhoenix/p/5752525.html

通过短时倒谱(Cepstrogram)计算进行时-倒频分析研究(Matlab代码实现)内容概要:本文主要介绍了一项关于短时倒谱(Cepstrogram)计算在时-倒频分析中的研究,并提供了相应的Matlab代码实现。通过短时倒谱分析方法,能够有效提取信号在时间与倒频率域的特征,适用于语音、机械振动、生物医学等领域的信号处理与故障诊断。文中阐述了倒谱分析的基本原理、短时倒谱的计算流程及其在实际工程中的应用价值,展示了如何利用Matlab进行时-倒频图的可视化与分析,帮助研究人员深入理解非平稳信号的周期性成分与谐波结构。; 适合人群:具备一定信号处理基础,熟悉Matlab编程,从事电子信息、机械工程、生物医学或通信等相关领域科研工作的研究生、工程师及科研人员。; 使用场景及目标:①掌握倒谱分析与短时倒谱的基本理论及其与傅里叶变换的关系;②学习如何用Matlab实现Cepstrogram并应用于实际信号的周期性特征提取与故障诊断;③为语音识别、机械设备状态监测、振动信号分析等研究提供技术支持与方法参考; 阅读建议:建议读者结合提供的Matlab代码进行实践操作,先理解倒谱的基本概念再逐步实现短时倒谱分析,注意参数设置如窗长、重叠率等对结果的影响,同时可将该方法与其他时频分析方法(如STFT、小波变换)进行对比,以提升对信号特征的理解能力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值