深入.net(类及方法)
.net 的命名规则:
帕斯卡命名法 ----- 多个单词说明,且直接连接,并首字母大写(类名、方法名、属性名....)
骆驼命名法---------多个单词说明,且直接连接,并首字母大写,第一个字母“小写”;(成员变量)
下划线命名法-----多个单词之间使用下划线来连接;(成员变量)
匈牙利命名法-----数据类型做前缀(控件命名)
访问修饰符:
1、类中的资源,默认只能在“本类”中使用(private)
2、项目中的资源,默认只能在“本项目”中使用(internal)
【类的默认访问修饰符是: internal】
成员变量的命名:
----- 以“下划线”的方式对变量命名
1、可以通过命名规则不同,快速的在“方法中”,区分“成员变量”和“局部变量”。
成员变量的定义及成员方法的定义:
成员变量设计:
1、类描述业务对象,需要记录的“特征”
2、类中方法与方法之间的数据传递
成员方法设计:
1、类所描述的业务对象,所具有的“业务功能”,写成对外公开的方法
2、类的现有方法中,存在“共用的业务逻辑”,重构成私有方法
3、类中现有方法中,逻辑太过复杂,通过重构私有方法的方式,将复杂逻辑拆分成多个关联的小业务逻辑。
方法优化技术-----重载:
将类中“功能类似”的方法名字全部修改为“方法名一致”。带来的好处,调用者不用再进行繁琐的方法选择,而只需要给出不同的“方法参数”,就可以“自动”的转向对应的方法实现。
规则:
1、方法名必须相同
2、参数列表必须不同(类型、个数、顺序)
3、返回类型与重载无关
类中的“特殊方法”:
1、名字特殊:方法名称必须与“类名”一致
2、形式特殊:方法没有返回类型(连void都没有)
3、用法特殊:不允许通过“显式调用”(通过方法名调用),而是在创建对象时,系统“自动调用”。
----- 构造方法(构造函数),与类同名,且无返回类型,作用初始化类。 (一般是public的,也可以私有的【用法特别】)
----- 构造方法,在“创建对象时”必须被使用。所以,如果您编写的类没有写“构造方法”,系统会自动的帮你生成“无参构造”,但是如果你写有“构造方法”,系统将不在提供该服务!
小贴士:
方法三要素:方法名、参数、返回类型
深入.net(类及方法)的更多相关文章
- Android随笔之——Android时间、日期相关类和方法
今天要讲的是Android里关于时间.日期相关类和方法.在Android中,跟时间.日期有关的类主要有Time.Calendar.Date三个类.而与日期格式化输出有关的DateFormat和Simp ...
- oracle调用JAVA类的方法
导入jar包 在oracle中导入需要的jar包,我们把编辑好的java类打成jar包,直接在oarcle里面写简单的调用就可以了, 1.操作系统需要拥有支持loadjava命令的jdk. 2.加 ...
- C#动态创建和动态使用程序集、类、方法、字段等
C#动态创建和动态使用程序集.类.方法.字段等 分类:技术交流 (3204) (3) 首先需要知道动态创建这些类型是使用的一些什么技术呢?其实只要相关动态加载程序集呀,类呀,都是使用反射,那么动 ...
- python学习道路(day8note)(抽象类,类的方法,异常处理,socket编程)
1.#面向对象 #抽象接口 === 抽象类 #就是架构师给你一个架子,你们去写,如果满足不了直接报错 #python2 print("python2---抽象类".center(2 ...
- 5.Swift枚举|结构体|类|属性|方法|下标脚本|继承
1. 枚举: ->在Swift中依然适用整数来标示枚举值,需搭配case关键字 enum Celebrity{ case DongXie,XiDu,Nandi,BeiGai } // 从左 ...
- RBAC类的方法
rbac类的 方法 authenticate($map,$model='')方法 传入查询用户的条件和用户表的MODEL 返回数组包含用户的信息 saveAccessList($authId=null ...
- java 调用 C# 类库搞定,三步即可,可以调用任何类及方法,很简单,非常爽啊
java 调用 C# 类库搞定,三步即可,可以调用任何类及方法,很简单,非常爽啊 java 调用 C# 类库搞定,可以调用任何类及方法,很简单,非常爽啊 总体分三步走: 一.准备一个 C# 类库 (d ...
- C#可扩展编程之MEF学习笔记(三):导出类的方法和属性
前面说完了导入和导出的几种方法,如果大家细心的话会注意到前面我们导出的都是类,那么方法和属性能不能导出呢???答案是肯定的,下面就来说下MEF是如何导出方法和属性的. 还是前面的代码,第二篇中已经提供 ...
- PHP加载另一个文件类的方法
加载另一个文件类的方法 当前文件下有a.php 和b.php,想要在class b中引入class a <?php class a { public $name = ' ...
随机推荐
- C#简单问题,不简单的原理:不能局部定义自定义类型(不含匿名类型)
今天在进行代码测试时发现,尝试在一个方法中定义一个委托,注意是定义一个委托,而不是声明一个委托变量,在编写的时候没有报错,VS也能智能提示,但在编译时却报语法不完整,缺少方括号,但实际查询并没有缺少, ...
- 用Qt写软件系列五:一个安全防护软件的制作(3)
引言 上一篇中讲述了工具箱的添加.通过一个水平布局管理器,我们将一系列的工具按钮组合到了一起,完成了工具箱的编写.本文在前面的基础上实现窗体分割效果.堆栈式窗口以及Tab选项卡. 窗体分割 窗体分割是 ...
- Web Scraping with Python读书笔记及思考
Web Scraping with Python读书笔记 标签(空格分隔): web scraping ,python 做数据抓取一定一定要明确:抓取\解析数据不是目的,目的是对数据的利用 一般的数据 ...
- c# 访问SQL Server 其他会话正在使用事务的上下文
这个异常是我第二次遇到! 从网上查找资料后知道了是由于数据库链接字符串是远程链接造成的,去掉链接服务器地址就行了,换成普通的链接字符串就可以了
- Castle ActiveRecord框架学习(一)
一.Active Record(活动记录)模式 Active Record是业务逻辑层中(<企业应用架构模式>将该模式归为数据源模式)常用的一种框架模式,尤其在底层数据库模型匹配业务模型时 ...
- Netbeans 8.0.2 For PHP继续坑
仍然没有修复PHP好用的代码快速导航功能,坑!
- dubbo管理控制台安装
官网提供的下载路径好像不能用了,我也是在网上找的包,现在提供下载路径:http://pan.baidu.com/s/1nvPHQvZ 下载下来了,把他解压到wabapps->ROOT里面,先把t ...
- Gym 100917J---dir -C(RMQ--ST)
题目链接 http://codeforces.com/gym/100917/problem/D problem description Famous Berland coder and IT mana ...
- HDU 1131 Count the Trees 大数计算
题目是说给出一个数字,然后以1到这个数为序号当做二叉树的结点,问总共有几种组成二叉树的方式.这个题就是用卡特兰数算出个数,然后因为有编号,不同的编号对应不同的方式,所以结果是卡特兰数乘这个数的阶乘种方 ...
- 「Ionic」使用chrom時的跨域問題
前言:在angularjs請求數據時,會遇到跨域問題,解決辦法有很多,但是都不是我想要的(很多人云亦云,都解決不了問題).如果你只是想在本機測試使用,可以參考如下設置. 具體辦法: 1.在电脑上新 ...