C#基础笔记2

23>>类的字段

一个变量一旦定义在方法外,类的里面,就叫做类的字段。这个变量可以被本类中所有的方法访问,但需要注意的是:静态方法只能访问静态字段。(由const修饰的常量不能定义为静态的)。

23>>方法重载

一般在同一个类中,方法名相同,并且方法的参数个数不同或对应位置上的类型不同,才能构成方法重载。(注意:方法重载和返回值没有关系)

 1 public static int Max(int i1,int i2)
 2   {
 3      if(i1>i2)
 4        {
 5            return i1;
 6         }
 7     else
 8        {
 9            return i2;
10        }
11    }
12 public static int Max(double i1,double i2)
13   {
14        If(i1>i2)
15          {
16              return i1;
17           }
18        else
19          {
20              return i2;
21          }
22   }

24>>类

属性:对象具有的各种特征,每个对象的每个属性都有特定值。

类:类是模子,确定对象将会拥有的特征(属性)和行为(方法)。

类是对象的类型

对象可以叫类的实例

类不占内存,对象才占内存。

定义类的语法:

[访问修饰符] class 类名

{

成员;

}

类中可以包含变量的定义与方法。在我们自己写的类中我们在写方法时,先不用加static。

类的实例化用关键字new 语法:类 实例名 = new 类();

类的成员的访问:实例名.属性  实例名.方法

只要是没有static修饰的方法和属性,都必须先实例化;在通过实例名.方法名或实例名.属性来访问。加static的方法或属性,可以直接通过类名.方法或类名.属性名来访问。

25>>构造方法

构造方法的好处:

1、  对多个属性赋值时不需要重复写实例名

2、  可以保证用户在new一个对象时候必须对某一个属性进行赋值

3、  和2类似,在创建对象时,对只读属性进行初始化

当我们定义好一个类后,如果我们没有写构造方法,那么系统会给我们加上一个默认的没有参数的构造方法,在这个方法中什么都不做,我们也什么也看不到

我们可以定义一个构造方法:

构造方法是一个特殊的方法,他的名字和类的名字相同,并且没有返回值,连void都可以省略。我们一旦手写构造方法后,原先系统默认给我们添加的那个无参的构造方法就不会为我们再添加了。

例外:要想拋一个异常,可以这样写:

throw new Exception(“信息错误”);

26>>属性

什么叫做属性:通俗点讲,就是定义一个Public具有get/set方法的变量,这个变量就是用于保护一个私有变量。

属性是为了保护与之相对应的字段的,保证对字段的读取和赋值符合要求。

允许外部访问的变量一定要声明为属性。

三种属性:读写属性、只读属性、只写属性。

 1  Private int age;
 2       Public int Age
 3 {
 4   get
 5 {
 6   return age;
 7 }
 8 set
 9 {
10   If(value>0)
11 {
12 age = value;  // 这里有一个关键字value,用来存储用户赋的值
13 }
14 else
15 {
16 age =0;
17 }
18 }
19 }
20 Zsperson.Age = 18;//调用set
21 Int aaa = zsperson.Age;//调用get

27>>get{return 字段;} set{字段=value;}

其实就是属性。属性可以使外部程序访问你的私有字段(前提是你的属性是公有的)。但属性最大的作用是,可以在get和set里面对字段进行一些处理,包括判断范围和求值等处理。这样可以保证数据的正确性并且保证你在外面读取的值是正确的且及时。或者可以说属性最重要的作用是做只读属性或只写属性,这个是最有用的。控制字段的读写,保证程序的正确性。

 1 private int ss;
 2 public int SS
 3 {
 4     get
 5     {
 6        return ss;
 7     }
 8     set
 9    {
10     if(value > 0)
11         ss = value;
12    }    }

这就是一个简单的属性。就是在设置值的时候,如果你设置值是小于0的话,就不会进行赋值操作的。只有是大于0的值才会赋值给ss。如果是只读属性的话,就是只有get,没有set,如果是只写属性的话,就只有set,没有get。

时间: 2024-10-10 09:11:44

C#基础笔记2的相关文章

java String 类 基础笔记

字符串是一个特殊的对象. 字符串一旦初始化就不可以被改变. String s = "abc";//存放于字符串常量池,产生1个对象 String s1=new String("abc");//堆内存中new创建了一个String对象,产生2个对象 String类中的equals比较字符串中的内容. 常用方法: 一:获取 1.获取字符串中字符的个数(长度):length();方法. 2.根据位置获取字符:charAt(int index); 3.根据字符获取在字符串中

网络基础笔记——OSI七层模型

OSI七层模型 由于整个网络连接的过程相当复杂,包括硬件.软件数据封包与应用程序的互相链接等等.如果想要写一支将联网全部功能都串连在一块的程序,那么当某个小环节出现问题时,整只程序都需要改写.所以我们将整个网络分成数层,每层都有自己独立的功能,而且每层的代码都可以独立撰写,因为相互之间不会干扰.如此一来,当某个小环节出现问题时,只要将该层的代码改写即可.并且这样可以让整个网络层次更加的清晰. 在网络上传输信息就像是一个发包裹的过程,从己方的应用程序开始往第七层的包裹里塞数据,再依次塞到第一层的包

[Java基础笔记]数组

Java基础笔记 定义数组: int[] numbers = new int[100]; //方法一 double[] num = new double[10]; int[][] a = new int[2][5]; 通过new创建的数组,元素默认值为0(0.0) int[] scores = {5,4,33,12,46}; //方法二 int[][] a = { //位数不足,自动补0 {5,3,2,1,6}, {10,12,14,15}, }; 数组特性:存储的都是同类型数据:长度定义后不可

C# 基础笔记(第一篇)

C#基础 概念:.net与c#.net/dontnet:一般指.net framework框架,一种平台,一种技术c#(charp):一种编程语言,可以开发基于.net的应用. *java既是一种技术又是一种编程语言.                           .net都能干什么?开发桌面应用程序   Winforminternet应用程序    Asp.net/webservice C/S:客户机(Client)/服务器模式(Server)B/S:浏览器(Browser)/务器模式(

我的LINUX基础笔记

Linux系统管理      1 Day   2014.5.23 su -name   切换用户passwd 密码   更改密码gnome-terminal    伪CLI   桌面终端程序1.查看内核版本uname -r    2.查看红帽系统版本cat /etc/redhat-rdlease3.查看LINUX标准分发版信息  lsb_release4.查看网卡的IP,MAX       ifconfig                       ifconfig eth 10.0.0.10

Nginx基础笔记

Nginx基础笔记 资源 安装 ubuntu下 编译安装 基本操作 HTTP基本配置 配置说明 配置文件目录结构 配置文件结构 模块 模块化 index模块 Log模块 Real IP模块 Access模块 Rewrite模块 Proxy模块 upstream模块 其他 配置静态化目录 负载均衡 控制页面缓存 nginx的内置变量 nginx小结 资源 资源 Nginx 官网 Nginx 官方下载地址 Nginx最佳实践配置项目 地址 Nginx Configuration wiki 教程 ag

MYSQL基础笔记(三)-表操作基础

数据表的操作 表与字段是密不可分的. 新增数据表 1 Create table [if not exists] 表名( 2 字段名 数据类型, 3 字段名 数据类型, 4 字段n 数据类型 --最后一行不需要加逗号 5 )[表选项]; If not exists:如果表名不存在,那么就创建,否则不执行创建代码,实现检查功能. 表选项:控制表的表现 1.字符集:charset/character 具体字符集:--保证表中数据存储的字符集. 2.校对集:collate 具体校对集: 3.存储引擎:e

REDIS基础笔记

Redis基础笔记 资源链接 简介 简介 安装 五种数据类型及相应命令 1. 字符串类型 2. 散列类型 3. 列表类型 4. 集合类型 5. 有序集合 其他 事务 SORT 生存时间 任务队列 发布/订阅模式 Python中使用Redis 实际实例 管理 其他 资源链接 推荐书籍:<Redis入门指南> 资源列表: redis命令速查command | CMD索引-中文 | CMD树-中文 redis源码github 下载地址redis.io The Little Redis book 入口

php代码审计基础笔记

出处: 九零SEC连接:http://forum.90sec.org/forum.php?mod=viewthread&tid=8059 ---------------------------------------------------------- team:xdsec&90sec author:wilson blog:http://blog.wils0n.cn/ 文章链接:wilson's blog_php代码审计基础笔记[求人气~~] ----------------------

web服务的一些基础笔记

1. MIME(Multipurpose Internet Mail Extension,多用途互联网邮件扩展) 它是SMTP能够传输非文本格式文件的根源,将他引入到HTTP,那么HTTP也可以传输图片声音等非文本格式的文件,所以他也是HTTP可以传输非文本格式文件的根源. 将非文本数据在传输数据前重新编码为文本格式,接收方能够用相反的方式将其重新还原为原来的格式,还能够用相应的程序来打开. 2.flash,Applet(Java中), Flash也是一种变成语言.可以有动态网页. 3.动态网页