变量get、set设置

简介:

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,如需转载请自行联系原作者
相关文章
|
7月前
|
缓存 监控 Java
ThreadLocal 源码解析get(),set(), remove()用不好容易内存泄漏
ThreadLocal 源码解析get(),set(), remove()用不好容易内存泄漏
90 1
|
7月前
idea快速生成get set 构造方法的快捷键
idea快速生成get set 构造方法的快捷键
236 0
|
3天前
|
Java Maven Spring
【SpringBug】lombok插件失效,但是没有报错信息,@Data不能生成get和set方法
解决写了@Data注解,但是在测试文件中生成的反编译target文件Us二Info中没有get和set方法
|
1月前
|
Java Windows
IDEA不使用lombok,如何快速生成get和set方法
【11月更文挑战第10天】在 IntelliJ IDEA 中生成 `get` 和 `set` 方法有多种方式:通过菜单操作、使用快捷键或自定义模板。菜单操作包括选择“Code”菜单中的“Generate...”,快捷键为“Alt + Insert”。自定义模板可在“File”-&gt;“Settings”-&gt;“Editor”-&gt;“Code Style”-&gt;“Java”中设置。批量生成时,可多选变量一次性生成。
idea按住alt + insert 没有出现get和set方法怎样解决
idea按住alt + insert 没有出现get和set方法怎样解决
|
2月前
|
C#
SET访问器和GET访问器
SET访问器和GET访问器
39 2
|
4月前
|
API
【Azure Key Vault】.NET 代码如何访问中国区的Key Vault中的机密信息(Get/Set Secret)
【Azure Key Vault】.NET 代码如何访问中国区的Key Vault中的机密信息(Get/Set Secret)
|
4月前
|
Java Linux 开发者
|
4月前
|
Java 应用服务中间件 nginx
【Azure 环境】Azure应用程序网关设置set_Cookie=key=value; SameSite=Strict; HTTPOnly,AzureAD登录使用cookie时使用不了的案例记录
【Azure 环境】Azure应用程序网关设置set_Cookie=key=value; SameSite=Strict; HTTPOnly,AzureAD登录使用cookie时使用不了的案例记录
|
4月前
|
缓存 NoSQL Redis
【Azure Redis 缓存】Azure Cache for Redis 是否记录具体读/写(Get/Set)或删除(Del)了哪些key呢?
【Azure Redis 缓存】Azure Cache for Redis 是否记录具体读/写(Get/Set)或删除(Del)了哪些key呢?