C#面向对象二
1.方法的定义
概念:对象的动态特征就是方法(静态特征是属性),方法表示此对象可以做什么。
类型:实例方法,静态方法,(构造方法,多态时会用到抽象方法和虚方法)
2.注意事项
访问修饰符:默认private
方法名:一般时动词或动宾短语。首字母大写。不能以数字开头。
参数列表:根据需要添加
成员变量==字段,相对与局部变量
3.面向对象小结
3.1封装
封装:将一个或若干个小对象包装在一起,然后以一个新的对象呈现
作用:封装使得一个对象的内部特征变得隐蔽,从而更安全。
类封装:类是最小的程序单元,是对属性、方法的封装,类中的public成员都是对外提供的数据访问接口。
模块封装:类可以被封装成模块,组成更大的程序组件。
从OOP理解:外界电泳的时候可以不用关心内部实现细节;充分体现面向对象中的“高内聚、低耦合”特性。
对象的重用性:依此封装,处处使用。
3.2变量
变量作用:指代内存地址,便于记忆。
变量的作用范围:
局部变量:一个方法内部交换数据,方法执行完毕,如果没有返回值,则变量很快被清理
成员变量:多个方法内部交换数据,通过对象的属性外对提供数据,变量的清理不确定
4方法重载
方法重载:编译器将根据方法参数的个数和类型自动匹配类的对应方法。
方法重载的好处:减少类的对外接口(只显示一个方法),降低类的复杂度(低耦合);
便于用户使用(相同功能的方法名称一样)和识别
方法重载的条件:方法的名称必须一样
方法的参数个数或参数类型不一样
方法重载的无关性:方法重载与返回值无关。
C#面向对象二的更多相关文章
- 2. 星际争霸之php面向对象(二)
题记==============================================================================本php设计模式专辑来源于博客(jymo ...
- Javascript面向对象二
Javascript面向对象二 可以通过指定原型属性来对所有的对象指定属性, Object.prototype.name="zhangsan"; Object.prototype. ...
- python面向对象二
1.1类的静态属性,类方法,类的静态方法 1.1.1静态属性(@property) 在类中: python内置的@property装饰器就是负责把一个方法(函数)变成属性来调用. class Stud ...
- canvas学习和面向对象(二)
Canvas 学习(二) 上一篇Canvas 学习(一)中我是用canvas绘制了一些基本和组合的图形. 现在开始绘制图片和动画帧,以及面向对象的升级版本. 还是一样,看代码,所有的代码都托管在git ...
- JavaScript 面向对象(二) —— 案例篇
看案例前可以先看看基础篇:JavaScript 面向对象(一) —— 基础篇 案例——面向对象的选项卡:把面向过程的程序一步步改成面向对象的形式,使其能够更加的通用(但是通用的东西,一般会比较臃肿). ...
- JavaScript面向对象(二)——成员属性、静态属性、原型属性与JS原型链
前 言 JRedu 上一篇博客中,我们介绍了JS中的面向对象,并详细的解释了this的指向问题.本篇博客,我们继续来学习JS的面向对象.来深入理解一下JavaScript OOP中的成员属性/方 ...
- 第八章:Python基础の面向对象(二)
本課主題 面向对象的多态 面向对象的成员 成员修饰符 特殊成员 面向对象其他应用 异常处理 设计模式与单例模式 面向对象的多态 指定参数类型只是多态的一种表现 另外一种是允许自己类型和自己的子类型(典 ...
- Python之面向对象二
面向对象的三大特性: 继承 继承是一种创建新类的方式,在python中,新建的类可以继承一个或多个父类,父类又可称为基类或超类,新建的类称为派生类或子类 python中类的继承分为:单继承和多继承 c ...
- Python自动化开发 - 面向对象(二)
本节内容 1.isinstance(obj,cls)和issubclass(sub,super) 2.反射 3.__setattr__,__delattr__,__getattr__ 一. isins ...
- python 面向对象二 类和实例
一.类和实例 面向对象最重要的概念就是类(Class)和实例(Instance),必须牢记类是抽象的模板,比如Student类,而实例是根据类创建出来的一个个具体的“对象”,每个对象都拥有相同的方法, ...
随机推荐
- cdoj525-猴子选大王 (约瑟夫环)
http://acm.uestc.edu.cn/#/problem/show/525 猴子选大王 Time Limit: 3000/1000MS (Java/Others) Memory Li ...
- Nginx源码完全注释(7)ngx_palloc.h/ngx_palloc.c
ngx_palloc.h /* * NGX_MAX_ALLOC_FROM_POOL should be (ngx_pagesize - 1), i.e. 4095 on x86. * On Windo ...
- 28-Truck History(poj1789最小生成树)
http://poj.org/problem?id=1789 Truck History Time Limit: 2000MS Memory Limit: 65536K Total Submiss ...
- 全新的css网站布局--Grid布局
Grid布局全新的css网站布局 CSS Grid 布局由两个核心组成部分是 wrapper(父元素)和 items(子元素). wrapper 是实际的 grid(网格),items 是 grid( ...
- ubuntu安装meshlab
ubuntu安装meshlab https://github.com/nine7nine/meshlab.git
- [SoapUI] JsonPath is to JSON what XPath is to XML
1.通过JsonUtil验证Json的有效性 2.两种方式通过JPath读取Json的内容
- asp.net webform过滤器(注意我们可以在拦截请求的同时设置回调函数)
.过滤器代码 public class PageFilter : IHttpModule { public String ModuleName { get { return "PageFil ...
- Spring.net 在aps.net Web的配置复习
1.引入程序集Spring.Core,CommonLogging,Spring.Web 2.Web.Config的配置 <?xml version="1.0" encodin ...
- Hive入门学习随笔(二)
====使用Load语句执行数据的导入 --将操作系统上的文件student01.txt数据导入到t2表中 load data local inpath '/root/data/student01.t ...
- SpringMVC 2.5.6 +Hibernate 3.2.0
spring MVC配置详解 现在主流的Web MVC框架除了Struts这个主力 外,其次就是Spring MVC了,因此这也是作为一名程序员需要掌握的主流框架,框架选择多了,应对多变的需求和业务时 ...