当前位置: 首页 > news >正文

如何为企业网站设计完整的推广方案linu安装wordpress

如何为企业网站设计完整的推广方案,linu安装wordpress,岳阳网站制作公司,织梦文章采集到wordpress在经过了JEP305(jdk14)和JEP375(jdk15)的两轮预览之后#xff0c;模式匹配终于迎来了他的交付日期#xff0c;在2022年发布的JDK16中#xff0c;伴随着JEP 394的发布#xff0c;预览结束了#xff0c;我们来看一下这个特性的结束点到底说了什么。 在这次预览之中#xff…在经过了JEP305(jdk14)和JEP375(jdk15)的两轮预览之后模式匹配终于迎来了他的交付日期在2022年发布的JDK16中伴随着JEP 394的发布预览结束了我们来看一下这个特性的结束点到底说了什么。 在这次预览之中我们看到几个例子教你如何合理的使用模式匹配。 一、对于equals方法的优化 在我们之前的例子我们存在一个问题就是如果我们要实现Point类的equals方法的时候。比如存在如下代码。 public class Point {private int x;private int y;public Point(int x, int y) {this.x x;this.y y;}public final boolean equals(Object o) {if (!(o instanceof Point))return false;Point other (Point) o;return x other.x y other.y;} } 我们着重来看equals方法我们来分析一下这段代码他的逻辑就是判断一个对象类型是不是Point如果不是直接返回false,如果是就强转然后执行后面的比较逻辑。 那么我们其实是可以使用模式匹配来优化这段代码的。很自然的可以优化为如下代码 ..... public final boolean equals(Object o) {if (o instanceof Point other) {return x other.x y other.y;} else {return false;} }我们使用模式匹配把检查转换赋值三步合并起来了。这样就优化了很多代码变得很简洁。 可是我们在回忆一下我们在instanceof 的模式匹配(一)中分析过他的这个赋值变量的作用域。我们知道作用域是和模式匹配的判断绑定的。当你模式匹配是true的时候这个绑定是生效的。 在我们这个例子中也就是说当o instanceof Point other为true的时候other可以在分支内使用。那我进一步演化。 public final boolean equals(Object o) {return (o instanceof Point other) x other.x y other.y; }当(o instanceof Point other)为真的时候后面是可以和other匹配比对的。所以可以生效不会编译错误。 当(o instanceof Point other)为假的时候直接返回。false。也是可以生效的。于是这就是模式匹配的最终答案。 而模式变量的流范围分析对语句是否可以正常完成的概念很敏感。例如请考虑以下方法 public void onlyForStrings(Object o) throws Exception {if (!(o instanceof String s)) throw new Exception();System.out.println(s); }首先他在if不成立的时候使用了绑定变量s那我们分析一下此时s能生效吗。if不成立必然是 o instanceof String s 为真为真的分支自然是能使用的。所以没问题。我们在使用模式匹配的时候这些问题都是要注意的。不过在现在的ide帮助下编译错误很容易就提示你修改你的分支作用域。 二、关于局部变量 模式变量只是局部变量的一个特例除了它们的作用域定义之外在所有其他方面模式变量都被视为局部变量。特别是这意味着 1 它们可以被分配给并且 2 它们可以隐藏字段声明。 看着就很晦涩说的啥玩意我来给你解读一下我们来看一段代码 class Example1 {String s;Example1(String s) {this.s s;}void test1(Object o) {if (o instanceof String s) {System.out.println(1: s);s s helloworld;System.out.println(2: s);}System.out.println(s);} }简简单单一个代码没啥好说的。但是我们注意一下这个类里面有自己的成员变量s我们称之为成员s同时在test1方法中使用模式匹配赋值的模式变量也叫s我们称之为模式s。此时会出现一个问题。模式s在自己的作用域范围内是会隐藏成员s。 这一点上他和普通的局部变量不同因为如果你在test1中定义局部变量是会报错的。 于是我们来调用输出一下结果。 Example1 example1 new Example1(12); example1.test1(13);不出所料在模式匹配的if分支内部模式s的13把成员s的12给隐藏了而在模式匹配的if分支之外。s才能引用到成员变量s的12. 我们再来看这段代码。 class Example2 {Point p;void test2(Object o) {if (o instanceof Point p) {// p 这个if内部模式匹配为真模式变量生效此时发生隐藏所有的p指的都是模式变量p...} else {// p 这个if内部所有的p指的都是Point p这个成员变量...}} }所以很重要的一个注意点就是在使用模式匹配的时候模式变量的流范围性质意味着必须小心确定名称是引用隐藏字段声明的模式变量声明还是字段声明本身。 至此模式匹配就完成了他的本职工作但是他的使命还远远没有结束。 未来的JAVA 将通过更丰富的模式形式来增强例如记录类的析构模式以及其他语言结构如 switch 表达式和语句的模式匹配。 模式匹配还会和其他的语法特征结合起来表达更加丰富简洁的语义。我们下期见。
http://www.hkea.cn/news/14342340/

相关文章:

  • 平度城乡建设局网站网页制作基础教程第二版教材
  • 房产网站cms黄骅招聘信息最新2022
  • 上海网站建设的价格低浙江建设职业技术学院
  • 金坛网站制作it培训学校
  • 做网站绑定 对应的域名外贸网站 建站
  • 私人诊所网站源码企业信息的网站
  • seo优化教学视频seo网站优化课程
  • 新手做哪类网站网站建设需要注意哪些方面
  • 单页网站搭建学校网站建设状况
  • 网站建设的功能描述wordpress插件 地图
  • 沧州做家装的公司网站中小企业网站制作过程中要注意什么
  • 网站推广基本预算制作网站网页域名的公司
  • 安徽两学一做专题网站wordpress好的博客主题
  • 哪些网站是用wordpress搭建的wordpress获取分类链接
  • 做网站的文章711相卡打印网址
  • dede网站后台怎么自己做网站免费的
  • 国家网站备案查询系统做网站收入来源表
  • 网站开发项目经验描述怎么写六安建设机械网站
  • 网站活动策划方案久治县网站建设公司
  • 做网站用什么电脑配置怎么做几个版面的网站
  • 足球比赛直播回放完整版seo伪原创工具
  • cn域名后缀网站做企业网站 目的
  • 没有营业执照怎么样做百度企业网站电脑做网站空间
  • 您在工信部门备案网站获取的icp备案号淮安网站建设价位
  • 抖音seo怎么收费广州网站优化推广
  • django 开放api 做网站岳阳网站开发培训
  • 深圳有做公司网站首页网站备案号添加
  • 外贸公司如何做公司网站设计一个完整的静态网站
  • 婚礼网站模板石家庄网站排名推广
  • 南京建设网站制作南通网站建设小程序