在使用Typescript时,我意识到模块中的类(用作命名空间)对于其他类是不可用的,除非我在它们前面写了export
关键字,例如:
module some.namespace.here
{
export class SomeClass{..}
}
var someVar = new some.namespace.here.SomeClass();
但是,我只是想知道为什么使用这个关键字而不是仅仅使用public
关键字,后者在方法级别用于表示方法或属性应该是外部可访问的。那么,为什么不直接使用这种机制来使类和接口等外部可见呢?
这将给出如下代码:
module some.namespace.here
{
public class SomeClass{..}
}
史蒂夫·芬顿的回答需要补充几点:
export
已经意味着两种不同的东西(取决于它是否处于顶级);使其表示第三个可能比添加public
/private
public
与export
相比,增加的复杂性微不足道。我们已经改变了很多关键词;不难。export
(unexport
??)没有合适的反义词,因此private
是合乎逻辑的选择。一旦有了private
,不选择public
作为对应项就有点疯狂了export
修改内部模块中的可见性是与ES6模块的最佳对齐方式请问这个为什么要用this啊,不是都在export default中吗? 我只知道this有代表当前类的意思,这个不太懂欸。目前做毕设在跟小白速成课,基础非常差,希望有好心人可以帮忙解答一下,谢谢啦。
我正在学习角度,选择了一个视频课程和一本pdf书,现在我对“出口”关键字的使用感到困惑... 两门课的一个例子来展示我的困惑...我只需要朝正确的方向快速踢一脚,就能克服这个小障碍。 Visual Studio 2017 示例项目使我在clientapp/app文件夹中创建了一个接口文件夹,并在其中放置了一个接口“answer.ts”。这是没有关键字“导出”。
我首先查看了新的ASP.NET标识类和它使用实体框架代码创建的数据库上的接口。我使用的是Visual Studio 2013 RC。 乍一看,数据库模式看起来相当正常: 但是所有的键都是NVARCHAR(128) http://www.asp.net/identity/overview/extensibility/change-primary-key-for-users-in-aspnet-ide
问题内容: 当我们在Java中使用关键字时,到底使用了哪个同步原语?? 编辑: JVM如何在本机级别实现锁? 问题答案: 在字节码级别上,Java具有和操作,在Java虚拟机规范的此页中进行了记录,并在下面粘贴了摘录( objectref 是该操作的操作数,取自堆栈): 监控 代码段 每个对象都有一个与其关联的监视器。执行 monitorenter 的线程 获得与 objectref 关联的监视器
乍一看,这似乎并不是非常有用(即使是错误提及原始类型),但随着类型注释变得更加复杂, 关键字的好处变得明显。 联合类型允许类型注释指定属性应该是一组类型之一(两者任一)。 function admitAge (age: number|string): string { return `I am ${age}, alright?!`; } admitAge('Forty'); // 'I am
这个问题直接类似于使用TypeScript进行类类型检查