专栏首页wfacebossc#面向对象基础3

c#面向对象基础3

静态与非静态的区别

(1)在非静态类中既可以有实例成员,也可以有静态成员(static修饰)。

(2)在调用静态成员的时候要使用:对象名.实例成员。

(3)在调用静态成员的时候要使用:类名.静态成员。

总结:静态成员使用类名去调用,非静态成员使用对象名去调用。静态函数中只能访问静态成员,不允许访问实例成员   (静静),实例函数中既可以使用静态成员,也可以是实例成员。

静态类中只允许有静态成员,不允许出现实例成员。

使用:什么时候使用静态,什么时候使用非静态

    (1)把类当成“工具类”去使用,考虑写成静态类  例如:console类

     (2)静态类在整个项目中资源共享---------占内存,,,,只有程序全部结束后,静态类才会释放资源。

非静态创建对象并赋值(逐一赋值)会造成代码冗余,所以产生构造函数来赋值

 构造函数:

作用:初始化对象(给对象的每个属性依次赋值),构造函数是一个特殊的方法。

     (1)构造函数没有返回值,没有Void

      (2)构造函数名称必须和类名一样。

语法:

public 类名(参数)

{

属性赋值;

}

         创建对象时调用构造函数 关键字new

new关键字做了三件事:

(1)在内存中开辟了一块空间。

(2)在开辟的空间创建对象。

(3)调用对象的构造函数进行初始化对象。

类当中默认有一个无参的构造函数   ,默认的构造函数会被我们新建的构造方法覆盖

无参的构造函数:public 类名()

{

}

有参的构造函数:public 类名(参数)

{

赋值;

}

在创建对象时(new)传参  n=new 类名(实参)

当类中已有重载的构造函数时,需要无参的构造函数需重新写无参构造函数。

this关键字:

作用:(1)表示当前类的对象

         (2)调用本类当中的构造函数(重载中不全参数的构造函数去调用全参的构造函数)

               语法::this()

  例如:public Student(部分参数):this(全部参数值)

  析构函数:~类名(){}

 作用:当程序结束的时候,析构函数才执行     -----------》释放资源

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • (14/24) css进阶:(入门)去除冗余的css

    在平时的项目开发中,我们会引入一些框架,比如:Bootstrap,但是在项目中通常我们只使用它的一小部分,还有部分是冗余的。更有甚有时候需求更改,带来DOM结构...

    wfaceboss
  • c# 框架学习(nop )总结-------编辑功能

    wfaceboss
  • ES6系列_13之Proxy进行预处理(简单学习)

    当我们在操作一个对象或者方法时会有几种动作,比如:在运行函数前初始化一些数据,在改变对象值后做一些善后处理。这些都算钩子函数,Proxy的存在就可以让我们给函数...

    wfaceboss
  • 从锅炉工到AI专家(4)

    俺踏月色而来
  • 干货:零售行业的数据挖掘七步走

    对于沃尔玛、华润万家、百佳等零售大超市而言,每天都有很多客户通过会员卡进行购买,不断积累了很多销售数据,如何利用这些数据,从数据中挖掘金矿,很值得每个商家去思考...

    CDA数据分析师
  • 【Nature 重磅】谷歌 DeepMind 发布可微分神经计算机 DNC,深度学习推理能力或大幅提升

    【新智元导读】谷歌 DeepMind 团队设计了一种叫做可微分神经计算机(DNC)的神经网络模型,结合神经网络与可读写的外部存储器,能够像神经网络那样通过试错或...

    新智元
  • 5️⃣蛋白质的特征信息3:卷曲螺旋预测

    Y大宽
  • Smart NIC是什么?FPGA智能网卡简析

    5G的到来,对软件定义网络(SDN)和网络功能虚拟化(NFV)提出了更加迫切的需求。

    深圳市联瑞电子
  • 速读原著-TCP/IP(IGMP示例)

    现在我们已经了解了一些 I P多播的细节,再来看看所包含的信息。我们使 s u n主机能够支持多播,并将采用一些多播软件所提供的测试程序来观察具体的过程。

    cwl_java
  • D-News | 中国移动打造华北最大数据中心,OPEC与阿联酋将推出“油气大数据项目”

    大数据文摘

扫码关注云+社区

领取腾讯云代金券