在类中都有一些成员。什么是类中的成员呢,我个人理解的是一个类中所应有的属性,方法,字段(因为目前才接触到类。所以类中一些其它应有的东西还不太熟悉),现在只探讨我列举的这几个在类中应有的东西。什么是属性呢。属性就是标志一些事物的特征。比如一个人所具有的属性就有身高,体重,年龄,性别……。然而在类中的属性是指一个字段应有的一些特征。比如在一个类中定义了一具int变量(对象)后。则这个变量就知道存储整型的数字。这就是它的属性,在C#中使用属性是为了提高安全性。当然也是为了符合面向对象程序设计的思想,不能在外部访问其内部的字段。在C#中使用get方法来读取值,使用set方法来写入值。这两种方法可以结合使用,也可以分开使用。所以一个对象就有了三种属性,分别是读,写,读写。好了,废话不多说。我们上代码。

代码如下:

using System;
namespace property
{
  class a
    {
        private string str1;//定义字符串1
        public string pro_str1//定义字符串的属性
        {
           get//读的属性
            {
                return str1;//返回值
            }
            set//写的属性
            {
                str1 = value;//重新赋值
            }
        }

private string str2="这个是类中的只读属性,不能写只能读";//定义字符串2
        public string pro_str2//定义字符串的属性
        {
            get//读的属性
            {
                return str2;//返回值
            }

}
        private string str3;//定义字符串3
        public string pro_str3//定义字符串的属性
        {
            set//写的属性
            {
                str3 = value;//重新赋值
            }
        }
       public void print()
        {
            Console.WriteLine("{0}", str3);//因为str3在外部只可以写不能读,所以在类中定义方法将其读出。
        }
    }
  class b
    {
      static void Main()
        {
            a temp = new a();//将类实例化
            temp.pro_str1 = "这个是类中的读写属性";//通过str1的属性为其赋值
            Console.WriteLine("{0}", temp.pro_str1);
            Console.WriteLine("{0}", temp.pro_str2);
            temp.pro_str3 = "这个是类的写属性,不能读,但是可以写";//通过str3的属性为其赋值
            temp.print();//读取str3
            Console.ReadKey();
        }
    }
}

结果如下:

这个是类中的读写属性
这个是类中的只读属性,不能写只能读
这个是类的写属性,不能读,但是可以写

关于在C#对类的属性理解的更多相关文章

  1. Python类属性与实例属性理解

    按理讲,类属性改变,类的实例对象这个属性也应该被改变,但是在python中实际却不是这样 class test(): name = 111 a = test() b = test() a.name = ...

  2. IT第七天 - 类及其属性、方法的理解,断点调试初识,代码优化总结,编程逻辑培养

    IT第七天 上午 类 1.对象:是多个实体抽象出来的共同点集合,对象包括:属性(即实体的特征).方法(即尸体的功能作用) 2.程序中,用类来模拟对象 3.类是抽象的,是对象的类型,是将多个拥有相同属性 ...

  3. IL接口和类的属性

    上一篇文章学习了IL的入门,接下来我们再通过两个例子来了解下类的属性.构造函数以及接口的使用 一.类的属性.构造函数 1.先看下我们要构建的类的C#代码,然后再进行IL的实现,示例代码如下: [Ser ...

  4. Python的类实例属性访问规则

    一般来说,在Python中,类实例属性的访问规则算是比较直观的. 但是,仍然存在一些不是很直观的地方,特别是对C++和Java程序员来说,更是如此. 在这里,我们需要明白以下几个地方: 1.Pytho ...

  5. C++中 类的构造函数理解(一)

    C++中 类的构造函数理解(一) 写在前面 这段时间完成三个方面的事情: 1.继续巩固基础知识(主要是C++ 方面的知识) 2.尝试实现一个iOS的app,通过完成app,学习iOS开发中要用到的知识 ...

  6. IOS 类的属性修饰符atomic

    在声明一个类的属性时,默认这个属性会被修饰atomic,意思是原子性访问的. nonatomic和atomic修饰的属性,在自己没有重写setter和getter的时候才会发生作用,其主要的作用可以理 ...

  7. java类(Class)的概念;对象的概念,声明类的属性 和方法,局部变量和成员变量,面向对象编程思维,抽象的概念

    类(Class)的概念 类是对一组具有相同特征和行为的对象的抽象描述. 理解: [1] 类包含了两个要素:特性和行为 => 同一类事物具有相同的特征和行为. [2] 类是一个群体性概念.例如:网 ...

  8. python 类和元类(metaclass)的理解和简单运用

    (一) python中的类 首先这里讨论的python类,都基于继承于object的新式类进行讨论. 首先在python中,所有东西都是对象.这句话非常重要要理解元类我要重新来理解一下python中的 ...

  9. python面向对象-2深入类的属性

    在交互式环境中输入: >>> class A: a=0 def __init__(self): self.a=10 self.b=100 >>> a=A() > ...

随机推荐

  1. HDU4738:Caocao's Bridges(求桥)

    Caocao's Bridges Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  2. su对环境变量做了什么

    服务器是ubuntu12.04 用一个账户app,使用su - app得到的环境变量和直接ssh登录的环境变量不同. 导致su - app,无法执行ifconfig su - app 的环境变量 /u ...

  3. stout代码分析之五:UUID类

    UUID全称通用唯一识别码,被广泛应用于分布式系统中,让所有的元素具有唯一的标识. stout中UUID类继承自boost::uuids::uuid.api如下: random, 产生一个UUID对象 ...

  4. 手脱ASProtect v1.23 RC1(无Stolen Code)

    1.载入PEID ASProtect v1.23 RC1 2.载入OD,不勾选内存访问异常,其他异常全部勾选 > 01C04200 push 跑跑排行.0042C001 ; //入口处 E8 c ...

  5. jquery字符串序列化方法总结

    在jquery中字符串序列化方法包括有param() .serialize() .serializeArray(),在这里对其常用做法进行总结. $.param()方法这是serialize()方法的 ...

  6. [BZOJ1101&BZOJ2301][POI2007]Zap [HAOI2011]Problem b|莫比乌斯反演

    对于给定的整数a,b和d,有多少正整数对x,y,满足x<=a,y<=b,并且gcd(x,y)=d. 我们可以令F[n]=使得n|(x,y)的数对(x,y)个数 这个很容易得到,只需要让x, ...

  7. 关于cocos2d-x 中 CCEditBox 的输入位置和IOS虚拟键盘位置不重合的bug

    这个文章的名字起的实在是有点长,主要是怕说不清楚. 在IOS上,输入时,我看到过的比较少,就两种,如附件两张图.一个是虚拟键盘的输入框完全是在CCEditBox上,另一张虚拟键盘的输入区域是紧挨着键盘 ...

  8. 仿照linux dpm机制,实现自己的dpm【转】

    转自:http://blog.csdn.net/lixiaojie1012/article/details/23788713 前边我们讨论分析了linux 内核的dpm实现,分析的目的在于学以致用:在 ...

  9. shell 智能获取历史记录功能

    vim ~/.inputrc 文件内容: "\e[A": history-search-backward"\e[B": history-search-forwa ...

  10. 【uva11248】网络扩容

    网络流裸题. 求完最大流之后保留残余容量信息,依次将已经加入最小割的弧变成c再跑,记录下即可. #include<bits/stdc++.h> #define N 20005 #defin ...