C#学习笔记_09_构造方法/函数
09_构造方法/函数
- 代码案例
- 作用:构造函数主要是用来创建对象时为对象赋初值来初始化对象;总与new运算符一起使用在创建对象的语句中,例如A a=new A();
- 特点:
- 构造函数具有和类一样的名称;
- 但它是一个函数,具有函数的所有特性,同一个类里面可以有多个参数不同的构造函数,也就是函数的多态;
- 构造函数是在实例化类时最先执行的方法,通过这个特性可以给对象赋初值;
- 构造函数没有返回值,也不能用void修饰,只有访问修饰符 (public&private);
- 构造方法的方法名必须是类名;
- 构造方法不能显示调用,构造方法是在实例化对象的时候被自动调用的;
- 注意:如果一个类中没有写构造方法,那么系统会提供一个默认的无参的构造方法;如果一个类中已经写了构造方法,那么默认提供的构造方法将不再被提供了;
- 构造方法的重载:参数不同
- 有参构造方法
- 构造方法之间的调用
- 注意:不能死循环调用(a调用b,b调用c,c调用a),不能自己调用自己
- 静态构造方法
- 定义:用static来修饰的构造方法
- 特点:
- 静态构造方法不允许使用访问权限修饰符 (public&private)
- 静态构造方法不能有参数
- 当这个类第一次被加载到内存中的时候执行,只会被执行一次
- 封装性
- 什么是封装
- 可以将某段具有特殊功能的代码提取出来做成方法
- 将某些具有特殊格式的数据做成一个类的对象
- 属性
- 语法:[访问权限修饰符] 要访问的字段的类型 属性名 { }
- 一个属性中至少得有一个访问器 ( set&get )
- 什么是封装
- 关键字
- readonly
- 表示只读
- readonly 和 const
- const常量必须有初始值,而readonly可以没有
- readonly可以在构造方法中进行赋值,而const不可以
- readonly
C#学习笔记_09_构造方法/函数的更多相关文章
- IOS学习笔记07---C语言函数-printf函数
IOS学习笔记07---C语言函数-printf函数 0 7.C语言5-printf函数 ------------------------- ----------------------------- ...
- IOS学习笔记06---C语言函数
IOS学习笔记06---C语言函数 -------------------------------------------- qq交流群:创梦技术交流群:251572072 ...
- Typescript 学习笔记三:函数
中文网:https://www.tslang.cn/ 官网:http://www.typescriptlang.org/ 目录: Typescript 学习笔记一:介绍.安装.编译 Typescrip ...
- ES6学习笔记<三> 生成器函数与yield
为什么要把这个内容拿出来单独做一篇学习笔记? 生成器函数比较重要,相对不是很容易理解,单独做一篇笔记详细聊一聊生成器函数. 标题为什么是生成器函数与yield? 生成器函数类似其他服务器端语音中的接口 ...
- OpenCV 学习笔记03 findContours函数
opencv-python 4.0.1 1 函数释义 词义:发现轮廓! 从二进制图像中查找轮廓(Finds contours in a binary image):轮廓是形状分析和物体检测和识别的 ...
- canvas学习笔记、小函数整理
http://bbs.csdn.net/topics/391493648 canvas实例分享 2016-3-16 http://bbs.csdn.net/topics/390582151 html5 ...
- Go语言学习笔记七: 函数
Go语言学习笔记七: 函数 Go语言有函数还有方法,神奇不.这有点像python了. 函数定义 func function_name( [parameter list] ) [return_types ...
- JavaScript:学习笔记(5)——箭头函数=>以及实践
JavaScript:学习笔记(5)——箭头函数=>以及实践 ES6标准新增了一种新的函数:Arrow Function(箭头函数).本文参考的链接如下: MDN箭头函数:https://dev ...
- jQuery源代码学习笔记_工具函数_noop/error/now/trim
jQuery源代码学习笔记_工具函数_noop/error/now/trim jquery提供了一系列的工具函数,用于支持其运行,今天主要分析noop/error/now/trim这4个函数: 1.n ...
随机推荐
- iOS 手机没有安装支付宝的情况下,不调支付宝网页的解决的方法
NSArray *array = [[UIApplication sharedApplication] windows]; UIWindow* win=[array objectAtIndex:0]; ...
- tiny4412 裸机程序 六、重定位代码到IRAM+0x8000【转】
本文转载自:http://blog.csdn.net/eshing/article/details/37115697 一.重定向 对于程序而言,我们需要理解两个概念,一是程序当前所处的地址,即程序在运 ...
- MarkMonitor 目前最安全的域名注册商,因此,世界500强网站中的22%域名托管于markmonitor公司
也许你查询某个大型公司域名whios信息时,常常会发现很多这些大型公司的域名都在一家名为MarkMonitor的公司注册,那么markmonitor是家什么样的公司呢? MarkMonitor是一家从 ...
- 54. Extjs组件render说明
转自:http://blog.chinaunix.net/uid-450400-id-2119168.html 1. 1.调用组件的render方法 panel.render('div'); 2.在配 ...
- Coursera Algorithms week3 快速排序 练习测验: Selection in two sorted arrays(从两个有序数组中寻找第K大元素)
题目原文 Selection in two sorted arrays. Given two sorted arrays a[] and b[], of sizes n1 and n2, respec ...
- VUE element-ui下拉列表获取label值
有这样一个场景,当我们往后台数据传的是id时,我们却想在前台获取列表显示的值,这时候可以用下面的方法来获取你想要的label值 let obj = {}; obj = this.arr.find((i ...
- 康少带你玩转CSS-1
什么是CSS? 层叠样式表(假如HTML是一个人的话,css就是一个人的装饰品,比如裙子,衣服口红) 用来干什么的 设置标签样式的 css注释 单行注释/**/ 多行注释 /* */ 语法结构 三种引 ...
- mysql在linux下的安装(5.7版本以后)
1.添加mysql组和mysql用户,用于设置mysql安装目录文件所有者和所属组. ①groupadd mysql ②useradd -r -g mysql mysql 2.将二进制文件解压到指定的 ...
- Python中的Map/Reduce
MapReduce是一种函数式编程模型,用于大规模数据集(大于1TB)的并行运算.概念"Map(映射)"和"Reduce(归约)",是它们的主要思想,都是从函数 ...
- javascript:void(0);什么意思
js里面void是一个操作符,该操作符计算表达式的值,但是不返回任何内容. <a href="javascript:void(0);"> 这里用到void(0)表示取消 ...