变量get、set设置

简介:

422101-20170425175551256-972024075.png

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Demo
{   

    public class MyClass
    {
        public readonly string Name; // 定义只读变量
        private int intVal;          // 私有过渡变量

        public int Val // 公开变量,对其进行get、set设置
        {
            get
            {
                return intVal;
            }
            set
            {
                if(value >= 0 && value <= 10)
                {
                    intVal = value;
                }
                else
                {
                    throw (new ArgumentOutOfRangeException("Val", value, "值必须在0到10之间。"));
                }
            }
        }

        public override string ToString() // 重构ToString方法
        {
            return "Name:" + Name + "\nVal:" + Val;
        }

        public MyClass(string newName) // 构造函数
        {
            Name   = newName;
            intVal = 0; 
        }

        static void Main(string[] args)
        {
            MyClass objectA = new MyClass("China!");
            objectA.Val = 11; // 报错,因为已经限定了值的范围
            Console.WriteLine("{0}",objectA.ToString());
            Console.ReadKey();
        }
    }
}

本文转自TBHacker博客园博客,原文链接:http://www.cnblogs.com/jiqing9006/p/6763517.html,如需转载请自行联系原作者
相关文章
|
4月前
|
缓存 监控 Java
ThreadLocal 源码解析get(),set(), remove()用不好容易内存泄漏
ThreadLocal 源码解析get(),set(), remove()用不好容易内存泄漏
67 1
|
4月前
idea快速生成get set 构造方法的快捷键
idea快速生成get set 构造方法的快捷键
155 0
|
4月前
|
存储 NoSQL Ubuntu
在Ubuntu上安装Redis并学习使用get、set和keys命令
在Ubuntu上安装Redis并学习使用get、set和keys命令
idea按住alt + insert 没有出现get和set方法怎样解决
idea按住alt + insert 没有出现get和set方法怎样解决
|
1月前
|
API
【Azure Key Vault】.NET 代码如何访问中国区的Key Vault中的机密信息(Get/Set Secret)
【Azure Key Vault】.NET 代码如何访问中国区的Key Vault中的机密信息(Get/Set Secret)
|
1月前
|
Java Linux 开发者
|
1月前
|
Java 应用服务中间件 nginx
【Azure 环境】Azure应用程序网关设置set_Cookie=key=value; SameSite=Strict; HTTPOnly,AzureAD登录使用cookie时使用不了的案例记录
【Azure 环境】Azure应用程序网关设置set_Cookie=key=value; SameSite=Strict; HTTPOnly,AzureAD登录使用cookie时使用不了的案例记录
|
1月前
|
缓存 NoSQL Redis
【Azure Redis 缓存】Azure Cache for Redis 是否记录具体读/写(Get/Set)或删除(Del)了哪些key呢?
【Azure Redis 缓存】Azure Cache for Redis 是否记录具体读/写(Get/Set)或删除(Del)了哪些key呢?
|
1月前
Intellij idea 生成带注释的get/set
Intellij idea 生成带注释的get/set
61 0
|
3月前
|
SQL 分布式计算 前端开发
MaxCompute操作报错合集之SQL脚本设置参数set odps.mapred.reduce.tasks=18;没有生效,是为什么
MaxCompute是阿里云提供的大规模离线数据处理服务,用于大数据分析、挖掘和报表生成等场景。在使用MaxCompute进行数据处理时,可能会遇到各种操作报错。以下是一些常见的MaxCompute操作报错及其可能的原因与解决措施的合集。