当前位置: 首页>>代码示例>>Golang>>正文


Golang Obj.Class方法代码示例

本文整理汇总了Golang中github.com/zxh0/jvm/go/jvmgo/jvm/rtda/class.Obj.Class方法的典型用法代码示例。如果您正苦于以下问题:Golang Obj.Class方法的具体用法?Golang Obj.Class怎么用?Golang Obj.Class使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在github.com/zxh0/jvm/go/jvmgo/jvm/rtda/class.Obj的用法示例。


在下文中一共展示了Obj.Class方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。

示例1: checkArrayCopy

func checkArrayCopy(src, dest *rtc.Obj) bool {
	srcClass := src.Class()
	destClass := dest.Class()

	if !srcClass.IsArray() || !destClass.IsArray() {
		return false
	}
	if srcClass.IsPrimitiveArray() || destClass.IsPrimitiveArray() {
		return srcClass == destClass
	}
	return true
}
开发者ID:cretz,项目名称:jvm.go,代码行数:12,代码来源:System.go

示例2: HandleUncaughtException

func (self *Thread) HandleUncaughtException(ex *rtc.Obj) {
	self.stack.clear()
	sysClass := rtc.BootLoader().LoadClass("java/lang/System")
	sysErr := sysClass.GetStaticValue("out", "Ljava/io/PrintStream;").(*rtc.Obj)
	printStackTrace := ex.Class().GetInstanceMethod("printStackTrace", "(Ljava/io/PrintStream;)V")

	// call ex.printStackTrace(System.err)
	newFrame := self.NewFrame(printStackTrace)
	vars := newFrame.localVars
	vars.SetRef(0, ex)
	vars.SetRef(1, sysErr)
	self.PushFrame(newFrame)

	//
	// printString := sysErr.Class().GetInstanceMethod("print", "(Ljava/lang/String;)V")
	// newFrame = self.NewFrame(printString)
	// vars = newFrame.localVars
	// vars.SetRef(0, sysErr)
	// vars.SetRef(1, JString("Exception in thread \"main\" ", newFrame))
	// self.PushFrame(newFrame)
}
开发者ID:cretz,项目名称:jvm.go,代码行数:21,代码来源:thread.go

示例3: isAppClassLoader

// todo
func isAppClassLoader(loader *rtc.Obj) bool {
	return loader.Class().Name() == "sun/misc/Launcher$AppClassLoader"
}
开发者ID:cretz,项目名称:jvm.go,代码行数:4,代码来源:ClassLoader.go


注:本文中的github.com/zxh0/jvm/go/jvmgo/jvm/rtda/class.Obj.Class方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。