前面回忆了一些C#基础语法,简单整理了一下笔记,要想深入研究的话,那就得找一本比较好的书了。接下来继续回忆C#语法知识。

方法

功能:用来复用代码的。当我们在一个程序 中反复的写了同样的代码,那么一般情况下,我们可以把需要重复写的代码定义在一个方法中。用的时候调用就行了

有static修饰的方法为静态方法

1定义语法的语法: [访问控制符 ]  [static ]   返回值类型 方法名(参数列表)

{方法体;

}

注意1 一般情况下方法定义在类中;

2 如果没有返回值,返回类型为VOID

3 方法名命名规则:方法名开头大写,参数名开头小写,参数名,变量名要有意义

方法的调用,对于静态方法,如果在同一个类中,直接写名字调用就行了,在类中调用本类中的方法,可以只写方法名。别的类中可以用类名.加点加方法名调用

4 Return 可以立即退出方法。

参数:

在方法中定义的变量为局部变量,作用域从定义域开始,到其所在的大括号结束为止 。

一个变量一旦定义在方法外,类的里面就叫做类的字段。这个变量就可以被类的所有方法访问。但注意 ,静态方法只能访问静态字段。(定义变量时在前面加static 就成为静态字段)static int a = 10;(static const double PI= 3.14 声明静态常量是错误的。Static不能用来修饰常量)  a 在类的所有静态方法中都可以访问。静态方法只能访问静态字段,非静态方法既能访问非静态字段又能访问静态字段。

当被调用者想得到调用者方法中的变量时,可以让调用者给被调用者参数.。

在方法名后面的括号内定义变量,叫做定义这个方法的参数。这里定义的变量用于接收调用者传过来的数据。注意:如果一个方法一旦有参数,那么调用者必须传相同个数的参数,并且传参的个数与对应位置上的类型必须一致。

当调用者想访问我们方法中的变量时,可以通过返回值。例如:

1 string s=Console.ReadLine();

2 int i= Convert.ToInt32(“22”);

只要在方法中有返回值,调用时就得用一个变量来接受返回值。方法中的返回值最多有一个。如果有返回值,必须通过return返回。

重载

什么叫方法重载:一般在同一个类中,方法名相同,方法的参数的个数或者对应位置上的类型不同,才能构成方法的重载。注意:方法重载和返回值没有关系。重载和多态也没有关系。只是为了增加方法的种类方便使用。

public static  int   Test(out int a)
{

a=10;

a++;

return 100;
}

1)  在方法中的参数(形参)类型前加out,那么传参数的时候,也必须在实参前加out。表明这个参数不是传入的,而是用来传出值得。

2)  如果参数是以out形式传入的,那么在传入前可以不用赋值。

3)  在方法中对于由out修饰的参数,在方法中必须在使用前赋值。(a=10 必须写在a=a+1的前面)

4)  Out用于传出值

5)  Ref可以理解成是双向的,既可以传入,又可以传出。在传参过程中,如果参数有out或ref修饰的话,那么改变方法中的参数变量的值,调用者方法中的值也会相应改变。

.NET学习记录2的更多相关文章

  1. Quartz 学习记录1

    原因 公司有一些批量定时任务可能需要在夜间执行,用的是quartz和spring batch两个框架.quartz是个定时任务框架,spring batch是个批处理框架. 虽然我自己的小玩意儿平时不 ...

  2. Java 静态内部类与非静态内部类 学习记录.

    目的 为什么会有这篇文章呢,是因为我在学习各种框架的时候发现很多框架都用到了这些内部类的小技巧,虽然我平时写代码的时候基本不用,但是看别人代码的话至少要了解基本知识吧,另外到底内部类应该应用在哪些场合 ...

  3. Apache Shiro 学习记录4

    今天看了教程的第三章...是关于授权的......和以前一样.....自己也研究了下....我觉得看那篇教程怎么说呢.....总体上是为数不多的精品教程了吧....但是有些地方确实是讲的太少了.... ...

  4. UWP学习记录12-应用到应用的通信

    UWP学习记录12-应用到应用的通信 1.应用间通信 “共享”合约是用户可以在应用之间快速交换数据的一种方式. 例如,用户可能希望使用社交网络应用与其好友共享网页,或者将链接保存在笔记应用中以供日后参 ...

  5. UWP学习记录11-设计和UI

    UWP学习记录11-设计和UI 1.输入和设备 通用 Windows 平台 (UWP) 中的用户交互组合了输入和输出源(例如鼠标.键盘.笔.触摸.触摸板.语音.Cortana.控制器.手势.注视等)以 ...

  6. UWP学习记录10-设计和UI之控件和模式7

    UWP学习记录10-设计和UI之控件和模式7 1.导航控件 Hub,中心控件,利用它你可以将应用内容整理到不同但又相关的区域或类别中. 中心的各个区域可按首选顺序遍历,并且可用作更具体体验的起始点. ...

  7. UWP学习记录9-设计和UI之控件和模式6

    UWP学习记录9-设计和UI之控件和模式6 1.图形和墨迹 InkCanvas是接收和显示墨迹笔划的控件,是新增的比较复杂的控件,这里先不深入. 而形状(Shape)则是可以显示的各种保留模式图形对象 ...

  8. UWP学习记录8-设计和UI之控件和模式5

    UWP学习记录8-设计和UI之控件和模式5 1.日历.日期和时间控件 日期和时间控件提供了标准的本地化方法,可供用户在应用中查看并设置日期和时间值. 有四个日期和时间控件可供选择,选择的依据如下: 日 ...

  9. UWP学习记录7-设计和UI之控件和模式4

    UWP学习记录7-设计和UI之控件和模式4 1.翻转视图 使用翻转视图浏览集合中的图像或其他项目(例如相册中的照片或产品详细信息页中的项目),一次显示一个项目. 对于触摸设备,轻扫某个项将在整个集合中 ...

  10. UWP学习记录6-设计和UI之控件和模式3

    UWP学习记录6-设计和UI之控件和模式3 1.按钮 按钮,响应用户输入和引发 Click 事件的控件. 使用<Button>就能创建一个按钮控件了.按钮是 ContentControl, ...

随机推荐

  1. 最详细eclipse汉化插件安装教程

    最详细eclipse汉化插件安装教程(转) 转自:http://blog.csdn.net/dai_zhenliang/article/details/8588576#t4 教程作者:戴振良 本文与& ...

  2. 用java页面下载图片

    try { //根据String形式创建一个URL对象 String filePath = materialProductWorks.getDownloadImageUrl(); URL url = ...

  3. 如何用bat批处理编译swf项目

    平时用FB等IDE编译多模块的游戏项目时,除了添加移除模块的操作很繁琐外,编译速度也非常之慢.而用bat来编译swf项目,速度非常快,稳定. 在此分享自己工作用的bat,每次运行会重新编译主模块Gam ...

  4. MetaHandler.js:移动端适配各种屏幕

    MetaHandler.js !function () { var opt = function() { var ua = navigator.userAgent, android = ua.matc ...

  5. A quick tour of JSON libraries in Scala

    A quick tour of JSON libraries in Scala Update (18.11.2015): added spray-json-shapeless libraryUpdat ...

  6. CSS3初学篇章_1

    CSS 层叠样式表 不同的浏览器需要不同的前缀,虽然目前最新版本的浏览器的不需要,但为了向下兼容,前缀还是少不了. 前缀 浏览器  -webkit  chrome和safari  -moz  fire ...

  7. 二叉树-二叉查找树-AVL树-遍历

    一.二叉树 定义:每个节点都不能有多于两个的儿子的树. 二叉树节点声明: struct treeNode { elementType element; treeNode * left; treeNod ...

  8. php中英字符串截取

    <?php @header('Content-type: text/html; charset=UTF-8'); function Ctruncate($str = '', $len = 0, ...

  9. java 中的2个接口 Comparable和Comparator

    像Integer.String这些类型的数据都是已经实现Comparable接口的,所以对这些类型可以直接通过Arrays.sort(...)和Collections.sort(...)方法进行排序. ...

  10. spidermark sensepostdata ntp_monlist.py

    试NTP 时间服务器用的,ntp_ip_enum.py,源码如下:#!/usr/bin/env python"""Basic script to pull address ...