c#基础班笔记
1、静态与非静态的区别:是否有static
非静态:
1)在非静态类中,既可以有实例成员,也可以有静态成员
2)在调用实例成员,通过 对象.实例成员
在调用静态成员时,通过 类名.静态成员
静态:
1)静态类中只能有静态成员,不能有实例成员
2)静态类不能被实例化,即不能创建对象
总结:静态成员必须使用类名去调用,而实例成员使用对象去调用
静态函数中只能访问静态成员,不允许访问实例成员
实例方法中既可以访问实例成员,也可以访问静态成员
静态类的使用:
1)如果你想要你的类当做一个“工具类”,这个时候可以考虑写成静态的
2)静态类在整个项目中资源共享
释放资源(GC,Garbage Collection 垃圾回收器):只有在程序全部结束后,静态类才能释放资源
2、构造函数
定义:构造方法用来创建对象,并且可以在构造函数中对对象进行初始化。减少了代码的冗余
作用:帮助我们初始化对象(给对象的每个属性依次赋值)
构造函数是一个特殊的方法:
1)没有返回值,也不能写void
2)构造函数名必须和类名一样
public Student(){}
构造函数的访问修饰符必须是public
构造函数的执行:构造函数在创建对象的时候执行
构造函数可以重载(具有相同的函数名,具有不同的参数)
****类当中会有一个默认的无参数的构造函数,当你写一个新的构造函数,不管是有参数的还是没有参数的,默认的都被干掉了
3、new关键字
new帮我们做了三件事:
1)在内存中开辟了一块空间
2)在开辟的空间中创建对象
3)调用对象的构造函数进行初始化对象——所以构造函数的访问修饰符必须是public
4、this关键字
作用:1)代表当前类的对象 this.Name=name;
2)在类中显式的调用本类的构造函数 public Student(string name,int age,char gender):this(name,0,gender) //调用了本类构造函数的name和gender
5、析构函数
语法:~Student(){函数体}
作用:当程序结束的时候,析构函数执行,释放资源
c#基础班笔记的更多相关文章
- Python基础班学习笔记
本博客采用思维导图式笔记,所有思维导图均为本人亲手所画.因为本人也是初次学习Python语言所以有些知识点可能不太全. 基础班第一天学习笔记:链接 基础班第二天学习笔记:链接 基础班第三天学习笔记:链 ...
- 黑马程序员Java基础班+就业班课程笔记全发布(持续更新)
正在黑马学习,整理了一些课程知识点和比较重要的内容分享给大家,也是给自己拓宽一些视野,仅供大家交流学习,大家有什么更好的内容可以发给我 ,现有黑马教程2000G QQ 1481135711 这是我总 ...
- PHP基础班初学感悟
不知不觉差不多一个月就过去了 刚到培训班那时候的心情,现在也还能有所感觉 作为今年6月份的毕业生,刚从大学的实习期出来,辞掉了上一份工作,本来是打算找一份更加与专业挂钩的工作做的 也许是90后对网络的 ...
- HTML基础学习笔记(1)
HTML学习笔记(1) 1.常用快捷键 win+d---返回桌面 win+e---我的电脑 win+r---打开运行 Alt+tab---切换软件 ctrl+tab---切换软件文档 F2---重命名 ...
- 号外:java基础班教材永久免费 报名就送
以前万人疯抢的成都传智播客java基础班教材,今日免费赠送,你hold的住吗? 由成都传智播客传道授业解惑的诸位老师,精心制作的教材.如今免费赠送,你能接的住吗? 书是交融感情.获得知识.传承经验的重 ...
- django项目班笔记-模板抽取
目录 一.将前端静态文件放置到项目文件目录 二.模板设置 三.将静态文件拖放到项目对应目录 四.检查HTML文件中的应用是否自动更改了 4.1 文件引用没有改变的解决方法 4.2 设置static文件 ...
- PHP基础班初学心得:用JQ实现表单的全选、反选、取消和删除功能
摘要: 本人刚参加PHP基础班培训,由于之前毫无基础,分享的心得可能不规范,方法也许也"旁门左道",不能保证质量,只作自己总结学习,也希望能帮助到同样是初学者的朋友们,共同进步. ...
- PHP基础班初学心得:JS里inner的一些理解
本人刚参加PHP基础班培训,由于之前毫无基础,分享的心得可能不规范,方法也许也"旁门左道",不能保证质量,只作自己总结学习,也希望能帮助到同样是初学者的朋友们,共同进步. 在这里分 ...
- PHP基础班初学心得:脑洞实验-JS变量存储函数与return的一些问题
本人刚参加PHP基础班培训第一天,由于之前毫无基础,分享的心得可能不规范,方法也许也"旁门左道",不能保证质量,只作自己总结学习,也希望能帮助到同样是初学者的朋友们,共同进步. 在 ...
随机推荐
- Linux学习笔记——软件包管理
1.RPM包的管理 RPM软件包的一个例子: sudo-1.7.2p1-5.el5.i386.rpm 这个rpm包名包括软件名sudo,版本号1.7.2p1,发行号5.el5,和硬件平台i386 (1 ...
- 运用Date日期来做日历
import java.util.*;import java.text.*;class Two { public static void main(String[] args) { ...
- requirejs 打包参数
https://github.com/requirejs/r.js/blob/master/build/example.build.js
- 关闭utorrent的广告
版本:3.4.9 / 方法来源:wikihow. 在"选项-高级"里将下面的选项全部改成false. offers.left_rail_offer_enabledoffers.sp ...
- C#- 操作Ini文件
以前习惯了使用.NET中的WEB.CONFIG或者APP.CONFIG,最近在做项目的时候遇到了些问题,发现没办法使用这些CONFIG文件.一开始我的做法是建一个文本文件,自己定规律,自己写方法去写新 ...
- 10个可以直接拿来用的JQuery代码片段
jQuery里提供了许多创建交互式网站的方法,在开发Web项目时,开发人员应该好好利用jQuery代码,它们不仅能给网站带来各种动画.特效,还会提高网站的用户体验. 本文收集了10段非常实用的jQue ...
- CentOS 修改IP地址, DNS, 网关
一.CentOS 修改IP地址 修改对应网卡的IP地址的配置文件# vi /etc/sysconfig/network-scripts/ifcfg-eth0 修改以下内容DEVICE=eth0 #描述 ...
- Android解析Json速度最快的库:json-smart
场景描写叙述: 本文仅验证了在安卓环境下使用Json的Key作为反序列化条件的解析速度.结论是解析速度最快的不是阿里的fastjson,也不是Google的Gson,而是json-smart. And ...
- [Javascript] The Array map method
One very common operation in programming is to iterate through an Array's contents, apply a function ...
- android 模拟器定在了任务栏出不来了
系统 任务栏上显示了正在运行的模拟器,但是点击它,始终看不到模拟器显示出来.用Alt + Tab 切换也不行 按照网上的说法 1.重新建一个模拟器,名字变一下 2.找到模拟器对应的配置文件,路径不管, ...