当前位置:首页 > CN2资讯 > 正文内容

我的世界Java复制物品mod

3天前CN2资讯


关于MC的复制一直都是人们抱怨Adobe的地方,他们不知道为什么一直不肯提供这样一个显然有必要的"Clone()"方法。按照官方手册上的解释,他们说只要用户用该MC相应的类重新new一个对象就可以了,但是那只能生成一个新的原始对象,并不能包含该MC中已经动态添加的各个Child,和用户期望的复制一个相同的MC不是一个概念。

面对用户诸多抱怨,Abobe一直回避这个问题,也不做任何解释。我也遇到过这个问题,而且看了很多国内外用户的讨论,最终我想明白了,Adobe不回应这个问题,是因为这个问题其实涉及到了Flash AS系统中的一个弱点(不能说是缺点),那就是:一个显示对象只能唯一作为某一个容器的Child,不能同时在多个容器里做Child。如果你把一个显示对象加入到其他的容器中,它就会自动从原容器中移除。回到我们说的MC复制问题上,如果用户克隆生成一个新的MC,并且把原MC里的孩子们也都加到新的MC里,那么那些孩子们就会从原来的MC里消失。为解决这个问题,就需要在加那些孩子们的时候也采用克隆的方式,这就形成了一个类似递归的模式,而显然Adobe不想在这里费心,所以他们就干脆不允许用户克隆MC,一了百了。

如果Adobe想偷懒,用户们是没脾气的,只能自己手动来实现这样一个功能了,思路如下——
Clone(MC):先用该MC的类生成一个新的原始对象,复制所有相关的参数设置,然后遍历原MC中的Children(只是孩子,不管孙子),对每个Child调用Clone(child)生成一个克隆加入到新的MC对象中。注意这里的Clone(MC)会形成嵌套递归调用。

其实对于Adobe设定的“把显示对象加入到其他容器就会自动从原容器中移除”的规则,我觉得是一个不良规则,因为没有任何理由一定要从原容器中移除,很可能只是为了偷懒。其实应该让用户可以选择是否保留在原容器中的对象,即为:当把显示对象加入到其他容器中时,如果设定保留标志参数为true,就会自动在原容器中保留一个原对象的克隆,并返回该克隆对象的引用供用户进行后续操作。如果用户认为不需要在原容器中保留,可以设该参数为false,或者在将来对返回的克隆引用设置 =null 就可以删除。

不管Adobe到底是出于什么目的,也不管他们以后会不会给你提供这样一个克隆函数,作为用户只能适应环境谋生存:如果你现在需要这个功能的话,自己写一个克隆的类来实现吧,方法就是我上面所说的那样。

    你可能想看:

    扫描二维码推送至手机访问。

    版权声明:本文由皇冠云发布,如需转载请注明出处。

    本文链接:https://www.idchg.com/info/21931.html

    分享给朋友:

    “我的世界Java复制物品mod” 的相关文章

    有效的被墙检测方法与工具指南

    被墙检测是指对于网站或网页进行一系列测试,以判断其是否被网络审查所封锁。这一过程不仅是技术上的探索,也是用户获取信息自由的重要环节。在如今的信息时代,能够顺利访问需要的信息,对个人和企业来说都是至关重要的。被墙检测帮助我们确认某些敏感网站或关键词的可达性,揭示了网络审查背后的复杂机制。 被墙检测的重...

    BBR加速开启:提升网络性能的最佳实践

    什么是BBR? 在网络领域,BBR(Bottleneck Bandwidth and Round-trip propagation time)是一个备受关注的TCP拥塞控制算法,由Google开发的这一技术,旨在提升网络连接的传输速率和稳定性。BBR独特之处在于,它通过实时监测数据包的传输时延与丢包...

    Win10一键安装SQLite脚本:简化你的数据库配置过程

    在开始使用SQLite之前,首先需要确保它已经正确安装在你的Windows 10系统上。这个过程包括几个简单的步骤。我会逐步带你完成这些操作,让你能快速进入SQLite的世界。 访问SQLite官网 首先,前往SQLite的官方网站,网址是https://www.sqlite.org/downloa...

    Linode新加坡服务器速度与性能评测

    Linode新加坡服务器概述 在当今互联网的快速发展中,选择一款合适的服务器至关重要。Linode是一个备受欢迎的云服务提供商,凭借其强大的全球服务网络而受到许多用户的信任。尤其是Linode的新加坡服务器,以其优越的速度和性能而显得尤为突出。 Linode在多个国家和地区设有数据中心,其中新加坡的...

    GPU租用服务:灵活、高效、经济的计算解决方案

    在今天的科技世界里,GPU租用服务正逐渐成为一种流行的趋势。这种服务允许用户通过云计算平台租用高性能的图形处理单元(GPU),从而完成需要大量计算的任务,比如深度学习、3D渲染或者其他复杂的数据处理。对于很多个人用户或小企业而言,直接购买这些昂贵的硬件并不现实,租用的方式显得更加灵活和经济。 借助G...

    反向代理的工作原理与应用场景详解

    反向代理概述 反向代理,听起来似乎有点复杂。实际上,这是一个位于客户端和服务器之间的“中间人”,它对客户端是透明的。换句话说,客户端并不知道有这个反向代理的存在。它的主要任务是接收客户端的请求,然后把这些请求转发给后端的服务器,再把服务器的响应返回给客户端。想象一下,反向代理就像一个邮递员,负责将信...