zoukankan      html  css  js  c++  java
  • 字段,属性

      字段:常量是在编译时已知并在程序的生存期内不发生更改的不可变值。常量使用 const 修饰符进行声明。

    class Calendar1
    {
        public const int months = 12;
    }
    属性

    属性是这样的成员:它们提供灵活的机制来读取、编写或计算私有字段的值。可以像使用公共数据成员一样使用属性,但实际上它们是称作“访问器”的特殊方法。这使得可以轻松访问数据,此外还有助于提高方法的安全性和灵活性。

    在本示例中,TimePeriod 类存储一个时间段。在内部,类以秒为单位存储时间,但客户端使用名为 Hours 的属性能够以小时为单位指定时间。Hours 属性的访问器执行小时和秒之间的转换。

     1 class TimePeriod
     2 {
     3     private double seconds;
     4 
     5     public double Hours
     6     {
     7         get { return seconds / 3600; }
     8         set { seconds = value * 3600; }
     9     }
    10 }
    11 
    12 
    13 class Program
    14 {
    15     static void Main()
    16     {
    17         TimePeriod t = new TimePeriod();
    18 
    19         // Assigning the Hours property causes the 'set' accessor to be called.
    20         t.Hours = 24;
    21 
    22         // Evaluating the Hours property causes the 'get' accessor to be called.
    23         System.Console.WriteLine("Time in hours: " + t.Hours);
    24     }
    25 }
    26 // Output: Time in hours: 24
    View Code
    • 属性使类能够以一种公开的方法获取和设置值,同时隐藏实现或验证代码。

    • get 属性访问器用于返回属性值,而 set 访问器用于分配新值。这些访问器可以有不同的访问级别。

    • value 关键字用于定义由 set 索引器分配的值。

    • 不实现 set 方法的属性是只读的。

    • 对于不需要任何自定义访问器代码的简单属性,可考虑选择使用自动实现的属性。

  • 相关阅读:
    [ 随手记 4 ]C/C++ 模板(Template)使用/重载区别
    [ 随手记 3 ] 堆区/栈区/堆栈/队列
    [ 随手记 2 ] C/C++ 数组/指针/传数组到函数/指针数组/数组指针
    柯西方程的另外一种解法
    十分强大的CC抛物线定理(数学)
    模板_BIT
    模板_SEG_TREE
    模板_SPLAY
    模板_LCA
    NOIP游(GUNCU)记
  • 原文地址:https://www.cnblogs.com/zhanying/p/3300195.html
Copyright © 2011-2022 走看看