草庐IT

browser_interface

全部标签

javascript - JavaScript 中接口(interface)模式的运行示例或工作演示

我正在阅读“projavascriptdesignpatterns”一书,发现在理解本书第2章中给出的“接口(interface)”模式方面没有什么困难,因为没有完整的代码示例演示该模式的用法。我正在寻找一些帮助来理解这种模式,一些正在运行的代码示例可能在jsfiddle等上。本书第14-22页解释了这种模式,我不理解的要点是“addForm”方法在哪里以及如何被调用。要么如果有人可以使用一些测试数据和对象来完成ResultFormatter示例,这将对理解模式非常有帮助。可以从http://jsdesignpatterns.com/下载“ProJavascriptDesignPatt

javascript - 正确使用 JavaScript 接口(interface)关键字

首先,不,我并没有尝试为我的JavaScript代码创建任何类型的Java类接口(interface)。我到处都看到了这些问题,虽然我还是JavaScript的新手,但我知道这些不是该语言的一部分。但是,我很好奇interface关键字的实际用途是什么。例如,Math是一个接口(interface),包含定义(但不包含实现)。我相信(也可能是完全错误的)这些是为语言的定义者提供一种方法来强制执行一组要在各种JavaScript引擎中实现的行为。对吗?此外,我希望有一个包含大量实用方法的“静态类”。我喜欢Math.sqrt(3)有一个大写的外部命名空间('Math'),以及其中许多逻辑上

testing - 转到类型错误 : struct does not implement interface

这个问题在这里已经有了答案:Structdoesnotimplementinterfaceifithasafunctionwhichparameterimplementinterface(2个回答)2年前关闭。//BEGIN:externallibrarytyperealXstruct{}typerealYstruct{}func(realX)Do()realY{returnrealY{}}//ENDtypeAstruct{amyX}typemyYinterface{}typemyXinterface{Do()myY}funcfoo(arg1myY){}funcmain(){foo(r

go - 是否可以更改存储在空接口(interface)中的结构的成员

我有这个:typepairstruct{a,bint}然后我定义了两个变量:x:=pair{3,4}varyinterface{}=x我意识到y不存储x的引用,而是通过以下代码存储它的副本:x.b=7fmt.Println(x)fmt.Println(y)//got://{37}//{34}另见:https://github.com/golang/go/blob/master/src/runtime/iface.go#L359有什么方法可以修改y中复制的结构的pair.y成员吗?试过这个:(失败)//cannotassigntoy.(pair).by.(pair).b=7试过这个:(也

go - 嵌入式字段是否计入接口(interface)

在Golang中,我可以在struct中嵌入字段。嵌入字段得到“提升”,新的struct开始使用嵌入字段的所有功能,就好像它是自身的一部分一样。所以我的问题是,嵌入式字段的功能是否计入接口(interface)实现?例如:typeFoostruct{Namestring}func(f*Foo)Name(){fmt.Println(f.Name)}typeHellointerface{Name()Hello()}typeBarstruct{Worldstring*Foo}func(b*Bar)Hello(){fmt.Println("Hello")}在上面的代码中,Bar{}没有实现名为

go - 为什么不能在赋值中使用 (type func(string)) 作为 type func(interface{})

这个问题在这里已经有了答案:Typefuncwithinterfaceparameterincompatibleerror(1个回答)Funcwithinterfaceargumentnotequalstofuncwithstringargument.Why?(1个回答)Gofunctiontypesthatreturnstructsbeingusedwithinterfaces(2个答案)PassinganarbitraryfunctionasaparameterinGo(4个答案)Howtoconvertfrom`func()*int`to`func()interface{}`?[

go - 我可以在 Go 中使用 unsafe.Pointer 将 *interface{} 转换为 *int

我正在用Go创建一个内存池。我这样做是因为将int隐式转换为interface{}会触发内存分配。我想避免分配。我想在一个池中分配几种类型的指针。游泳池是这样的。typecreatorstruct{buf[]interface{}}func(cr*creator)Create()*interface{}{iflen(cr.buf)==0{cr.buf=make([]interface{},256)}current:=&cr.buf[0]cr.buf=cr.buf[1:]returncurrent}func(cr*creator)CreateInt()*int{pointer:=cr.C

go - 在 Go 中调用一个将接口(interface)作为参数的函数

关闭。这个问题需要detailsorclarity.它目前不接受答案。想改进这个问题吗?通过editingthispost添加细节并澄清问题.关闭8年前。Improvethisquestion如何构造接口(interface)作为函数的参数?typeblahinterfaceinterface{method1()method2()method3()}funcblah(iblahinterface){}blah(?)

java - 如何将此 Java 接口(interface)和继承结构转换为 Golang?

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭4年前。Improvethisquestion是否可以将这种使用接口(interface)和继承的Java结构改写成惯用的Golang方式?这不是super复杂的Java代码,但它显示了类继承的力量,但我想尝试以某种方式在Go中实现相同的结果Java代码:首先有一个类接口(interface)。publicinterfaceWebEntry{Stringperform(ConnectionDataconnectionData,SessionDatas

pointers - 使用指针接收器方法创建包装现有类型的接口(interface)

我需要测试一个使用GoogleCloudPubsub的应用程序,因此必须包装其类型pubsub.Client和pubsub.Subscriber以用于测试目的。然而,尽管进行了几次尝试,我还是无法围绕它们找到一个可以编译的接口(interface)。我试图包装的方法的定义是:func(s*Subscription)Receive(ctxcontext.Context,ffunc(context.Context,*Message))errorfunc(c*Client)Subscription(idstring)*Subscription这是当前代码。Receiver接口(interfa