繁体   English   中英

无法访问 Dart 库中的私有方法

[英]Can't access to a private method in Dart Library

我必须访问 Class 中的私有方法。 我在 Class 内部创建了一个库,将其导入但仍无法识别。 我对私有变量也有同样的问题。

例子:

文件缓冲区.dart

    library buflib;

    class Buffer{

            void _record(){
                    [...]
            }

    }

在同一文件夹中: engine.dart

    import 'buffer.dart';

    class Engine {

            Buffer _buff = Buffer()

            [...]
            void myMethod(){
                    [...]
                    this._buff._record();
            }
    }

我有这个错误:

没有为“缓冲区”类型定义方法“_record”。 尝试将名称更正为现有方法的名称,或定义>一个名为 '_record'.dartundefined_method 的方法

有什么建议么? 谢谢

你不能从外面的类中调用私有方法或变量......你应该通过删除“under score”将其更改为公共

默认情况下,每个单独的.dart文件是一个单独的库。 由于私有标识符对库来说是私有的,因此它们对其他.dart文件不可见。

您可以使用librarypart of指令将多个.dart文件分组到同一个库中,但这些指令没有记录

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM