当前位置:  开发笔记 > 编程语言 > 正文

如何在PowerShell(> 5.0)类中创建只读属性

如何解决《如何在PowerShell(>5.0)类中创建只读属性》经验,为你挑选了1个好方法。

随着5.0版以来PowerShell类的引入,我想知道是否可以创建只读属性以及如何创建它.属性值从内部逻辑填充,用户可以读取但不设置它.

考虑以下代码来创建一个类,假设我想将属性"Year"设置为只读:

class Car {
    [string] $Maker;
    [string] $Model;
    [string] $Year;
    [int] $Odometer ;


    [void] Drive([int] $NbOfKM) { 
        $this.Odometer += $NbOfKM;  
     }

    Car(){
    }

    Car([int] $Odometer){
        $this.$Odometer = $Odometer;
    }
}

Stuart.. 7

不幸的是,PowerShell中没有getter/setter支持.

你可以做的是使用hidden关键字隐藏属性,只提供获取值的方法,但只在内部设置.然后"设定者"变得不易被发现.



1> Stuart..:

不幸的是,PowerShell中没有getter/setter支持.

你可以做的是使用hidden关键字隐藏属性,只提供获取值的方法,但只在内部设置.然后"设定者"变得不易被发现.

推荐阅读
放ch养奶牛
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有