C# 基础之字段与属性

1.属性是字段的扩展

2.根据面向对象封装思想,字段最好设为private(私有),这样有利于防止客户端对字段的篡改,从而保证了成员的完整性

3.访问类中私有字段,C#提供了属性,用来对字段进行灵活的控制与访问

4.属性中有两个访问器get和set用来控制字段的读取与赋值

时间: 2024-10-13 05:42:09

C# 基础之字段与属性的相关文章

[.net 面向对象编程基础] (9) 类的成员(字段、属性、方法)

[.net 面向对象编程基础] (9) 类的成员(字段.属性.方法) 前面定义的Person的类,里面的成员包括:字段.属性.方法.事件等,此外,前面说的嵌套类也是类的成员. a.类的成员为分:静态成员(static)和非静态成员 b.静态成员用static标识,不标识则默认为非静态成员 c.静态成员属于类所有,动态成员则属于实例所有,即对象 d.静态成员为类所有实例共享,无论类有多少实例或副本,静态成员只占用存中一块区域.非静态成员则在类的每个实例,都创建一个内存域. 下面主要说明一下类的主要

c# 字段和属性

一.字段(field) 可以在声明字段的同时赋给它一个初始值. 二.属性(property) 1.引入 假如将字段声明为public,则在类的外部都可以对该字段进行访问和更改,违背了类的封装特性.如果声明为private,则这种形式的封装通常又过于彻底.例如,你可能希望字段从外部只读,但从内部可以更改,但需要验证对数据进行的更改. 以前,程序语言为了实现这些要求,采取的办法是将字段标记为私有,然后提供取值和赋值的方法来访问和修改数据.遗憾的是,这样做会影响类的可编程性.无法再用赋值运算符来设置类

C# 字段、属性、成员变量 [转载]

一.定义与作用 1.字段(field):是C#类级别定义的,和方法同一级别. 一般用来类内部进行访问,充当一种类中的"全局变量"角色:或者配合属性来使用 2.属性:同样是C#类级别定义的,一般是供外部类访问的. 3.成员变量:"全局变量",在类中定义的变量,区别于在方法中定义的局部变量.它与字段属性不是同一级别概念,字段,属性都可以叫做成员变量. 二.使用 class Basic { private string FieldVar;//这是字段,在当前类中调用 pr

字段与属性(c#)

对实现者来说像方法 对调用者来说像字段 可以将属性看成一种智能字段,属性就是字段与方法的扩展. 面向对象的一个原则就是数据封装,所以不能将字段以公有方式提供给外界. 就像上面例子不能给年龄赋负数,而不使用属性要给外界提供私有字段就得写两个get set 方法,用属性的话虽然使类型定义变得复杂了,但代码写起来却改善了许多.

字段和属性的区别

可以理解为字段是类内部用的,属性是类外部用的. 下面是个C#写的例子,这个例子作用是可以通过属性获取时间值,但是只能通过SetTime()方法设定时间值,我想这也是为什么要分字段和属性的一大原因吧. 首先声明的是private类型的变量(字段)hours,通常字段写法都是加个"_"符号,然后声明只读属性hours. 在类内部可以通过变量(字段)对其进行读写,在类外部不能访问变量(字段),只能访问属性.而且在此例内如果想修改时间值,只能通过调用SetTime()方法往里传值(因为这里的各

C#:字段与属性

MSDN中是这么介绍字段和属性的: A field is a variable of any type that is declared directly in a class or struct. 字段:“字段”是直接在类或结构中声明的任何类型的变量. A property is a member that provides a flexible mechanism to read, write, or compute the value of a private field.Properti

实战基础技能(02)-----------类,属性,构造函数和方法打死都要快速区分

一:做项目时经常会看见很对自定义的类,一定要快速的识别才能正确的理解项目代码 二:区分 类:很好区分,有Class修饰 方法:有返回值的描述,新的方法名 构造函数:没有返回值,有类名 属性:主要是get 和set标志,可能会有自定义的类型有一定的迷惑性 实战基础技能(02)-----------类,属性,构造函数和方法打死都要快速区分,布布扣,bubuko.com

C#.NET中的字段与属性_1

一个类中需要有描述这个类信息的数据,而存储这些数据的变量就成为字段. 字段默认的访问级别为private(只有本类可以直接访问),我们将其访问级别改为public,在其他类中就可以访问了. 字段和属性表示对象包含的信息,字段类似于变量,因为可以直接读取或设置他们. 属性是对字段的封装.属性可以对字段的访问进行控制,可以进行非法设置值的判断.属性并不存储数据,字段存储数据. 封装后,有一些字段我只能赋值,不能读取,有些只能读取,不能赋值,而且可以对传过来的值进行选择. 建议所有的字段不要写成pub

C#.NET中的字段与属性_2 为什么要用属性

属性的好处,就是对存入公共变量的值可以进行处理,如果觉得该值不合法,可以就地变换或者直接提出警告,只不过多花了点点时间,所以有一点点慢.但对于该类所生成的对象的使用安全,还是有相当多的好处的,至少运行时,因公共变量值的错误而产生的问题会大大减少. 用公共变量速度快,就是因为少了中间处理的环节,但是也因此更直接地对类的内容进行了操作和控制,比起属性的使用来说,相对的安全性就变低了. 应该说属性与公共变量各有各的用途,否则公共量变就会被取消掉. 公共变量的好处,就是快.但由于这种用法必须开放变量访问