在哪里买空间做网站中小企业网络营销论文

web/2025/9/26 14:04:07/文章来源:
在哪里买空间做网站,中小企业网络营销论文,小程序开发用什么语言,jquery 打开新网站推荐一部好电影《致命魔术》。#xff08;此处为植入广告#xff09; 推荐理由#xff1a;涉及人性。画面不错#xff0c;剧情跌宕#xff0c;亦魔亦幻#xff08;此处的”魔“为魔术的”魔“#xff09;。虽然女猪脚不尽如人意#xff0c;但是男猪脚比较帅。而… 推荐一部好电影《致命魔术》。此处为植入广告        推荐理由涉及人性。画面不错剧情跌宕亦魔亦幻此处的”魔“为魔术的”魔“。虽然女猪脚不尽如人意但是男猪脚比较帅。而且看完后有利于理解克隆当然理解了克隆也利于观影        首先简单客观地解释下几个关键的名词我们约定A表示原来的对象P表示A引用的对象AC表示克隆后的A对象        浅克隆复制克隆对象的基本信息及其对其他对象的引用。在改变AC对象的P对象时那么也会改变A对象的P对象。        深克隆深克隆也会复制对象的基本信息以及其对其他对象的引用但是改变AC对象的引用P对象时不会引起A对象的P对象。        从前面浅克隆的定义上看改变AC的P就能改变A的P这样显得这种克隆更加像深克隆都刨到别人祖坟了够深的。但是换个角度来看这种克隆只是浅显的将一个对象拷贝出来了并没有真正的去对这个对象进行深入地剖析即没有剥离两者之间的依赖使得A和AC更像一个对象的不同命名因此反而显得浅显了。深克隆的技术含量也较之浅克隆高点。        为了方便理解我将浅克隆形象化为一对连体双胞胎而将深克隆形象化为一对同卵双胞胎或者也可将浅克隆理解为镜像而深克隆则是复制了一个真正具有独立行为能力的实体。        下面详细对它们进行阐述        克隆        实现克隆的类都必须实现Cloneable接口而且一般需要重写Object类里的clone()方法。我们首先看看Object类中对clone()方法的注释与声明Java代码   /**      * Creates and returns a copy of this object.  The precise meaning      * of copy may depend on the class of the object. The general      * intent is that, for any object {code x}, the expression:      * blockquote      * pre      * x.clone() ! x/pre/blockquote      * will be true, and that the expression:      * blockquote      * pre      * x.clone().getClass()  x.getClass()/pre/blockquote      * will be {code true}, but these are not absolute requirements.      * While it is typically the case that:      * blockquote      * pre      * x.clone().equals(x)/pre/blockquote      * will be {code true}, this is not an absolute requirement.      * p      * By convention, the returned object should be obtained by calling      * {code super.clone}.  If a class and all of its superclasses (except      * {code Object}) obey this convention, it will be the case that      * {code x.clone().getClass()  x.getClass()}.      * p      * By convention, the object returned by this method should be independent      * of this object (which is being cloned).  To achieve this independence,      * it may be necessary to modify one or more fields of the object returned      * by {code super.clone} before returning it.  Typically, this means      * copying any mutable objects that comprise the internal deep structure      * of the object being cloned and replacing the references to these      * objects with references to the copies.  If a class contains only      * primitive fields or references to immutable objects, then it is usually      * the case that no fields in the object returned by {code super.clone}      * need to be modified.      * p      * The method {code clone} for class {code Object} performs a      * specific cloning operation. First, if the class of this object does      * not implement the interface {code Cloneable}, then a      * {code CloneNotSupportedException} is thrown. Note that all arrays      * are considered to implement the interface {code Cloneable} and that      * the return type of the {code clone} method of an array type {code T[]}      * is {code T[]} where T is any reference or primitive type.      * Otherwise, this method creates a new instance of the class of this      * object and initializes all its fields with exactly the contents of      * the corresponding fields of this object, as if by assignment; the      * contents of the fields are not themselves cloned. Thus, this method      * performs a shallow copy of this object, not a deep copy operation.      * p      * The class {code Object} does not itself implement the interface      * {code Cloneable}, so calling the {code clone} method on an object      * whose class is {code Object} will result in throwing an      * exception at run time.      *      * return     a clone of this instance.      * exception  CloneNotSupportedException  if the objects class does not      *               support the {code Cloneable} interface. Subclasses      *               that override the {code clone} method can also      *               throw this exception to indicate that an instance cannot      *               be cloned.      * see java.lang.Cloneable      */      protected native Object clone() throws CloneNotSupportedException;   虽然过长但是我觉得还是很有必要看看的。从前面的注释中可以看出x.clone() ! x 但是 x.clone().getClass() x.getClass() 。这可以看成克隆的精确描述。从x.clone() ! x 看觉得这个镜像也不简单镜子里面的世界和镜子外面的世界原来也不是同一个开始有一点魔幻的味道了。注释里还有一句话值得我们关注Note that all arrays are considered to implement the interface  Cloneable and that the return type of the clone method of an array type T[] is T[] where T is any reference or primitive type.所有的数组都实现了Cloneable接口返回的是一个数组类型。这个大家可以验证一下反正我验证是有的。这段注释里还有很多地方值得我们去研究比如提到了深克隆和浅克隆我都好不容易贴出来了大家自己去看看吧        clone()方法会抛出CloneNotSupportedException这是为什么呢这是因为Object类没有实现Cloneable接口。身为万物之祖Object也有很多不会的啊        浅克隆        要想做到AC的属性和A一样其实并不难最简单的办法就是AC A而且也能保证改变AC的P会引起A的P改变。这样不就可以了吗为什么还要用克隆呢你似乎忘了在克隆里我们讲过AC和A需满足两个条件x.clone() ! x和x.clone().getClass() x.getClass()。如果直接AC A很明显AC A返回的是true。至于具体原因就涉及到克隆的作用了等会的克隆的用途会详细说明。        浅克隆的实现并不难下面看一个示例Java代码   class Sword{          String name;          float weight;          public Sword(String name, float weight){              this.name  name;              this.weight  weight;          } // end constructor      } // end class Sword            class Hero implements Cloneable{          String name;          int energy; // hero的战斗值          Sword s;          public Hero(String name, int energy, Sword s){              this.name  name;              this.energy  energy;              this.s  s;          } // end constructor                    public void kill(){              System.out.println(战斗值为  energy  的  name  挥动着重为                       s.weight  斤的  s.name  要开杀戒了);          } // end kill                    /**          * 重写Object的clone方法。          */          public Object clone(){              Hero h  null;              try {                  h  (Hero)super.clone();              } catch (CloneNotSupportedException e) {                  e.printStackTrace();              } // end try-catch              return h;          } // end clone      } // end class Hero            public class ShallowClone{          /**          * 主函数。          * param args          */          public static void main(String[] args) {              // 声明一个Sword对象              Sword s  new Sword(绝世好剑, 58.3f);              // 声明一个Hero              Hero h1  new Hero(步惊云, 1000, s);              h1.kill();              // 克隆              Hero h2  (Hero) h1.clone();              // 改变h2的s的一些属性              h2.s.name  草雉剑;              h2.s.weight  23.4f;              h1.kill();          if( !(h1  h2)){              System.out.println(从哲学的角度讲此时的                    h1.name  已经不是从前的  h1.name  了);          }else{              System.out.println(娃哈哈我  h1.name  还是  h1.name                    );              } // end if-else          } // end main         } // end class ShallowClone   这段代码的运行结果是什么呢请看             战斗值为1000的步惊云挥动着重为58.3斤的绝世好剑要开杀戒了            战斗值为1000的步惊云挥动着重为23.4斤的草雉剑要开杀戒了            从哲学的角度讲此时的步惊云已经不是从前的步惊云了        是的正如我们所说的h1的s对象的name和weight也改变了。而且其实现也是很简单。当然对这一块比较熟悉的朋友会非常气愤地指出这里有一些基本的常识错误绝世好剑和草雉剑根本就不是这个重量步惊云也得不到草雉剑但是(made in China.equals(everything is possible)) true支持国产再次植入广告。好吧我们回到浅克隆这里实现浅克隆的代码相当简单直接super.clone()就可以了。        网上有一种说法说浅克隆是不正确的克隆。我觉得不管正不正确当我们要克隆的对象只有基本数据类型和String等属性时直接浅克隆就可以了。运用之妙存乎一心        深克隆        前面讲了深克隆就是将克隆的对象和原来的对象独立开来。那么怎么实现呢        在上面的代码上修改了一点Java代码   class Sword implements Cloneable{          String name;          float weight;          public Sword(String name, float weight){              this.name  name;              this.weight  weight;          } // end constructor          public Object clone(){              try {                  return super.clone();              } catch (CloneNotSupportedException e) {                  e.printStackTrace();              } // end try-catch              return null;          } // end clone      } // end class Sword        class Hero implements Cloneable{          String name;          int energy; // hero的战斗值          Sword s;          public Hero(String name, int energy, Sword s){              this.name  name;              this.energy  energy;              this.s  s;          } // end constructor          public void kill(){              System.out.println(战斗值为  energy  的  name  挥动着                  重为  s.weight  斤的  s.name  要开杀戒了);          } // end kill          /**          * 重写Object的clone方法。          */          public Object clone(){              Hero h  null;              try {                  h  (Hero)super.clone();                  h.s  (Sword) s.clone();              } catch (CloneNotSupportedException e) {                  e.printStackTrace();              } // end try-catch              return h;          } // end clone      } // end class Hero        public class DeepClone{           /**          * 主函数。         * param args         */          public static void main(String[] args) {              // 声明一个Sword对象              Sword s  new Sword(绝世好剑, 58.3f);              // 声明一个Hero              Hero h1  new Hero(步惊云, 1000, s);              h1.kill();              // 克隆              Hero h2  (Hero) h1.clone();              // 改变h2的s的一些属性              h2.s.name  草雉剑;              h2.s.weight  23.4f;              h1.kill();              if(! (h1  h2)){                  System.out.println(从哲学的角度讲此时的                            h1.name  已经不是从前的  h1.name  了);              }else{                  System.out.println(娃哈哈我  h1.name  还是  h1.name  );              } // end if-else          } // end main      } // end class DeepClone   认真观察就会发现代码的变动并不是很大只是Sword类也实现了Cloneable接口在Hero中也对hero对象的sword进行了克隆。这样就实现了深克隆。那么这段代码的结果是不是我们希望看到的呢                战斗值为1000的步惊云挥动着重为58.3斤的绝世好剑要开杀戒了                战斗值为1000的步惊云挥动着重为58.3斤的绝世好剑要开杀戒了                 从哲学的角度讲此时的步惊云已经不是从前的步惊云了        看吧h1并没有因为克隆后的h2改变了s的name和weight而跟着发生了改变圆满完成了我们的预期目标。        关于深克隆还有另一种方式使用Serializable。大家可以去关注一下这里就不讨论了。        克隆的用途        我们知道了深克隆和浅克隆那么克隆到底有什么用呢        答案很简单有需求就有市场。我们要克隆是因为我们需要一个和已知对象一样的对象这个我觉得看了《致命魔术》后肯定理解得更深。当我们需要一个对象的副本但又不想影响原来的对象时我们可以考虑使用克隆。        个人觉得克隆为程序员提供了对对象更加灵活的操纵力。我觉得大家在理解的基础上然后提出自己的见解就可以了。        总结        最近看《Effective Java》里面专门提到了谨慎地覆盖clone。而且里面也提到了用copy constructor克隆构造器或者copy factory克隆工厂更加地安全。网上有很多解说的但是我觉得这个版本不错大家去看看吧http://www.slideshare.net/fmshaon/effective-java-override-clone-method-judiciously        最后还有一件事《致命魔术》真的不错        晚安

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/82232.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

电商运营学习网站手机网站建设怎样

文章目录1.线性探测 哈希表代码2.拉链法 哈希表代码1. 散列表用的是数组支持按照下标随机访问数据的特性,所以散列表其实就是数组的一种扩展,由数组演化而来。可以说,如果没有数组,就没有散列表。 2. 散列函数,设计的基…

上海定制网站开发营销推广小兵cms个人网站模板

首先是方法的参数是父类对象,传入子类对象是否可行 然后引出Parent p new Children(); 这句代码不是很理解,google的过程中引出向上转型 要理解向上转型又引出了动态绑定 从动态绑定又引出了静态绑定 程序绑定的概念: 绑定指的是一个方法的…

商城网站前台html模板如何在百度上发广告

在现代软件开发中,Git已经成为了版本控制系统的事实标准。无论是在个人项目还是大型企业级开发中,Git都是不可或缺的工具。因此,掌握Git的基本操作和高级特性对于软件开发者来说是非常重要的。以下是根据提供的文件内容,总结出的3…

网站模板和定制logo设计图片免费 图案 简约

在简要介绍了配置元数据并涵盖了我之前的文章《 在Spring Boot中使用配置元数据Pimp您的配置》中的基础知识之后,现在该看看如何进一步执行此步骤并进一步自定义配置。 在这篇文章中,我计划提出对配置属性的弃用,并讨论各种值提供程序&#x…

有个新网站专门做外贸的叫什么做网站学不需要做后台管理系统

UG装配约束命令在如下位置 首选接触:含接触和对齐,自动判断两种类型 接触:约束对象使其曲面法向在相反方向,并共面或共线 对齐:约束对象使其曲面法向在同一方向,并共面或共线 自动判断中心/轴&#xff1…

网站盈利的10种方式我的班级网站模板

目录 前言边云协同时代背景边缘人工智能边缘挑战英特尔边云协同的创新成果最后 前言 最近观看了英特尔On技术创新大会直播,学到了挺多知识,其中对英特尔高级首席 AI 工程张宇博士讲解的边云协同加速 AI 解决方案商业化落地特别感兴趣。张宇博士讲解了英…

永年县网站一个新手怎么做电商

近日,Scroll生态项目Penpad将品牌进一步升级为Pencils Protocol,全新升级后其不仅对LaunchPad平台进行了功能上的升级,同时其也进一步引入了Staking、Vault以及Shop等玩法,这也让Pencils Protocol的叙事方向不再仅限于LaunchPad&a…

烟台快速建站公司iis5.1怎么新建网站

AIDE(Advanced Intrusion Detection Environment,高级入侵检测环境)是个入侵检测工具,主要用途是检查文档的完整性。AIDE能够构造一个指定文档的数据库,他使用aide.conf作为其配置文档。AIDE数据库能够保存文档的各种属性,包括:权…

中英企业网站模板中国网站用Cn域名

这篇小文将使用小波多分辨分析对一个简单信号进行降噪,主要是降噪流程,为以后的小波更复杂的降噪算法打下良好的基础。降噪算法流程大致如下: (1)去趋势项(如直流电流),并将数据归一…

重庆专业做网站安徽鲲鹏建设集团有限公司网站

lucene学习教程 1.1 什么是lucene Lucene是一个全文搜索框架,而不是应用产品。因此它并不像www.baidu.com 或者google Desktop那么拿来就能用,它只是提供了一种工具让你能实现这些产品。 2 lucene的工作方式 lucene提供的服务实际包含两部分&#xf…

电商 wordpress主题河北网站seo策划

目录 一:绘制直线 二:绘制矩形 三:绘制圆形 四:绘制椭圆

网站空间选择公司介绍ppt制作

一、 总则 本部分规定了 IT 运维服务支撑系统的应用需求,包括 IT 运维服务模型与模式、 IT 运维服务管理体系、以及 IT 运维服务和管理能力评估与提升途径。 二、 参考标准 下列文件中的条款通过本部分的引用而成为本部分的条款。凡是注日期的引用文件&#xff0c…

中小企业网站建设开题报告网站购物车建设

笔记来源: 1.【传送门】 2.【传送门】 前沿原理介绍 Grander因果检验是一种分析时间序列数据因果关系的方法。 基本思想在于,在控制Y的滞后项 (过去值) 的情况下,如果X的滞后项仍然有助于解释Y的当期值的变动,则认为 X对 Y产生…

新增网站备案设计一个自己公司网站开发

在开发阶段,如果同时拥有多个开源代码托管平台的账户,在代码的管理上非常麻烦。那么,如果同一台机器上需要配置多个账户,怎样才能确保不冲突,不同账户独立下载独立提交呢? 我们以两个github账号进行演示 …

免费网站后台管理系统模板下载青岛网站建设信息公示

一、 1.1 QSqlRelationalTableModel继承自QSqlTableModel,并且对其进行了扩展,提供了对外键的支持。一个外键就是一个表中的一个字段 和 其他表中的主键字段之间的一对一的映射。例如,“studInfo”表中的departID字段对应的是“departments…

网站开发 如何定位学生免费服务器

DB-Engines 数据库流行度排行榜 10 月更新已发布,排名前二十如下:这期的数据比较有意思,到了这个月,Microsoft SQL Server 马上扭转局势,成了分数增长最多的一个,与上个月相比其增加了 9.66 分,…

公司网站建设合同需要交印花税教育机构做网站素材

首先来看看网上的一篇文章:http://it.dengchao.org/neatbeans-problem-fedora/linux/ 在Windows和Linux(Fedora/Ubuntu/RedHat)中安装了NetBeans后,会遇到菜单等显示乱码的问题。这里告诉大家如何解决中文显示乱码的问题,包括Windows、Fedor…

有引导页的网站网站移动端就是app吗

智能停车场物联网远程监控解决方案 智能停车场物联网远程监控解决方案是一种集成了现代物联网技术、大数据分析以及云计算等先进技术手段,对停车场进行全面智能化管理的综合系统。它通过实时感知、精准采集和高效传输各类停车数据,实现对停车场运营状态…

网站建设 天猫 保证金做网站需要虚拟主机还是服务器

1.数据字典(固定的数据,省市级有层级关系的) //mp表如果没有这个字段,防报错,eleUI需要这个字段TableField(exist false) //父根据id得到子数据 ,从controller开始自动生成代码-->service//hasChildren怎么判断,只需要判断children的parentid的count数量>0就可以了//优化…

凡科网站建设怎么去掉极速建站外省住房和城乡建设厅网站

阿丹: myisam存储引擎与innodb存储引擎战争,在mysql中5.5.5之前myisam还是mysql的默认存储引擎但是在5.5.5版本之后被innodb反超。 官方解释: MyISAM是MySQL的默认数据库引擎(5.5版之前),由早期的ISAM所改…