软件构造课程随笔——3-3【抽象数据类型-2】
目录
- 不变性
- 不变量
- ADT的不变性
- 表示不变量和抽象函数
- 表示域(space of representation values)
- 抽象域(space of abstract values)
- 抽象函数abstraction function
- 表示不变量rep invariant
- 检查表示不变量
- AF, RI以及表示暴露安全性的注解
- 一个ADT的规格说明应该写什么?
- 用ADT不变量替换前置条件
- 如何建立不变量
不变性
不变量
不变量是一种属性,它在程序运行的时候总是一种状态,而不变性就是其中的一种:一旦一个不变类型的对象被创建,它总是代表一个不变的值。当一个ADT能够确保它内部的不变量恒定不变(不受使用者/外部影响),我们就说这个ADT保护/保留自己的不变量.
当一个ADT保护/保留自己的不变量时,对代码的分析会变得更简单。例如,你能够依赖字符串不变性的特点,在分析的时候跳过那些关于字符串的代码;或者当你尝试基于字符串建立其他的不变量的时候,也会变得更简单。
ADT的不变性
好的ADT最重要属性是保持其不变性。
在程序运行过程中,程序始终保持不变的性质,不可变就是不可变类型的重要不变性。ADT自身有责任确保其不变性,而不是依赖于调用者或者其他模块 。
/*** This immutable data type represents a tweet from Twitter.*/
public class Tweet {public String author;public String text;public Date timestamp;/*** Make a Tweet.* @param author Twitter user who wrote the tweet* @param text text of the tweet* @param timestamp date/time when the tweet was sent*/public Tweet(String author, String text, Date timestamp) {this.author = author;this.text = text;this.timestamp = timestamp;}
}
我们应该怎么样做才能确保Tweet对象是不可变的(一旦被创建,author, message, 和 date都不能被改变)?
第一个威胁就是使用者可以直接访问Tweet内部的数据,例如:
Tweet t = new Tweet("justinbieber", "Thanks to all those beliebers out there inspiring me every day", new Date());
t.author = "rbmllr";
这就是一个表示暴露(Rep exposure)的例子,就是说类外部的代码可以直接修改类内部存储的数据。上面的表示暴露不仅影响到了不变量,也影响到了表示独立性,如果我们改变类内部数据的表示方法,使用者也会受到影响。
然而我们可以经过一些修饰:
private final String author;private final String text;private final Date timestamp;
其中, private 表示这个区域只能由同类进行访问;而final确保了该变量的索引不会被更改,对于不可变的类型来说,就是确保了变量的值不可变。
但是这并没有解决全部问题,表示还是会暴露:
/** @return a tweet that retweets t, one hour later*/
public static Tweet retweetLater(Tweet t) {Date d = t.getTimestamp();d.setHours(d.getHours()+1);return new Tweet("rbmllr", t.getText(), d);
}
retweetLater 希望接受一个Tweet对象然后修改Date后返回一个新的Tweet对象。
问题出在哪里呢?其中的 getTimestamp 调用返回一个一样的Date对象,它会被 t.t.timestamp 和 d 同时索引。所以当我们调用 d.setHours()后,t也会受到影响,如下图所示:
这样,Tweet的不变性就被破坏了。这里的问题就在于Tweet将自己内部对于可变对象的索引“泄露”了出来,因此整个对象都变成可变的了,使用者在使用时也容易造成隐秘的bug。
我们可以通过防御性拷贝:
public Date getTimestamp() {return new Date(timestamp.getTime());
}
可变类型通常都有一个专门用来复制的构造者,你可以通过它产生一个一模一样的复制对象。在上面的例子中,Date的复制构造者就接受了一个timestamp值,然后产生了一个新的对象。另一个复制可变对象的方法是使用clone()来弥补这个问题:在返回的时候复制一个新的对象而不会返回原对象的索引。
总的来说,你要特别注意ADT操作中的参数和返回值。如果它们之中有可变类型的对象,确保你的代码没有直接使用索引或者直接返回索引。
表示不变量和抽象函数
在研究抽象类型的时候,先思考一下两个值域之间的关系:
表示域(space of representation values)
里面包含的是值具体的实现实体。在简单的情况下,一个抽象类型只需要实现为单个的对象,但是更常见的情况是使用一个很多对象的网络。
抽象域(space of abstract values)
里面包含的则是类型设计时支持使用的值。这些值是由表示域“抽象/想象”出来的,也是使用者关注的。例如,一个无限整数对象的抽象域是整个整数域,但是它的实现域可能是一个由原始整数类型(有限)组成的数组实现的,而使用者只关注抽象域。
但是,实现者是非常“在意”表示域(和抽象域)的,因为实现者的责任就是实现表示域到抽象域的转换(映射)。
例如,我们选择用字符串来表示一个字符集合:
public class CharSet {private String s;...
}
如上图所示,表示域R包含的是我们的实现实体(字符串),而抽象域里面是抽象类型表示的字符集合,我们用箭头表示这两个域之间的映射关系。这里要注意几点:
1.每一个抽象值都是由表示值映射而来 。我们之前说过实现抽象类型的意义在于支持对于抽象值的操作,即我们需要能够创建和管理所有的抽象值,因此它们也必须是可表示的。
2.一些抽象值是被多个表示值映射而来的。这是因为表示方法并不是固定的,我们可以灵活的表示一个抽象值。
3.不是所有的表示值都能映射到抽象域中。在上面这个例子中,“abbc”就没有被映射。因为我们已经确定了表示值的字符串中不能含有重复的字符——这样我们的 remove 方法就能在遇到第一个对应字符的时候停止,因为我们知道没有重复的字符。
由于我们不可能对每一个映射一一解释,为了描述这种对应关系和这两个域,我们再定义两个概念:
抽象函数abstraction function
是表示值到其对应的抽象值的映射:
AF : R → A
快照图中的箭头表示的就是抽象函数,可以看出,这种映射是满射,但不一定是单射(不一定是双射)。
表示不变量rep invariant
是表示值到布尔值的映射:
RI : R → boolean
对于表示值r,当且仅当r被AF映射到了A,RI®为真。换句话说,RI告诉了我们哪些表示值是“好”的(能够去表示A中的抽象值),在下图中,绿色表示的就是RI®为真的部分,AF只在这个子集上有定义。
例如上图中,CharSet这种类型的实现禁止有重复字符,所以 RI(“a”) = true, RI(“ac”) = true, RI(“acb”) = true, 但是 RI(“aa”) = false, RI(“abbc”) = false.其中为假的集合用红色区域表示,合法的(为真)的字符串集合用绿色表示。
表示不变量和抽象函数都应该在表示声明后注释出来:
public class CharSet {private String s;// Rep invariant:// s contains no repeated characters// Abstraction function:// AF(s) = {s[i] | 0 <= i < s.length()}...
}
不同的内部表示,需要设计不同的 AF 和 RI
选择某种特定的表示方式 R ,进而指定某个子集是“合法”的 ( RI),并为该子集中的每个值做出“解释 ”(AF) 即如何映射到抽象空间中的值。
即使是同样的抽象域和表示域以及同样的表示不变量,我们也可能有不同的解释方法/抽象函数。还是上面的例子,我们可以对表示值中相邻的字符做不同的解释: “acgg” 被解释为[a-c] 和 [g-g]中的字符,即{a,b,c,g}。现在的映射如下图所示:
public class CharSet {private String s;// Rep invariant:// s.length() is even// s[0] <= s[1] <= ... <= s[s.length()-1]// Abstraction function:// AF(s) = union of { c | s[2i] <= c <= s[2i+1] } // for all 0 <= i < s.length()/2...
}
总之,一个ADT的实现不仅是选择表示域(规格说明)和抽象域(具体实现),同时也要决定哪一些表示值是合法的(表示不变量),合法表示会被怎么解释/映射(抽象函数)。
检查表示不变量
表示不变量不仅是一个简洁的数学概念,你还可以通过断言检查它的不变属性来动态捕捉bug。例如上面的RatNum,这里就举出了一种检查的方法:
// Check that the rep invariant is true
// *** Warning: this does nothing unless you turn on assertion checking
// by passing -enableassertions to Java
private void checkRep() {assert denominator > 0;assert gcd(Math.abs(numerator), denominator) == 1;
}
你应该在每一个创建或者改变表示数据的操作后调用 checkRep() 检查不变量,换句话说,就是在使用创建者、生产者以及改造者之后。在上面的RatNum中,你可以看到我们在两个创建者的最后都使用了 checkRep() 进行检查。
虽然说观察者通常不需要使用 checkRep() 进行检查,但这也是一个不错的主意。因为在每一个操作中调用 checkRep() 检查不变量更能够帮助你捕捉因为表示暴露而带来的bug。
AF, RI以及表示暴露安全性的注解
你应该在抽象类型(私有的)表示声明后写上对于抽象函数和表示不变量的注解,这是一个好的实践要求。
当你在描述抽象函数和表示不变量的时候,注意要清晰明确:
1.对于RI(表示不变量),仅仅宽泛的说什么区域是合法的并不够,你还应该说明是什么使得它合法/不合法。
2.对于AF(抽象函数)来说,仅仅宽泛的说抽象域表示了什么并不够。抽象函数的作用是规定合法的表示值会如何被解释到抽象域。作为一个函数,我们应该清晰的知道从一个输入到一个输入是怎么对应的。
3.还需要将表示暴露的安全性注释出来。这种注释应该说明表示的每一部分,它们为什么不会发生表示暴露,特别是处理的表示的参数输入和返回部分(这也是表示暴露发生的位置)。
这样做的意义即给出理由,证明代码并未对外泄露其内部表示——自证清白
一个ADT的规格说明应该写什么?
如上图所示,规格说明在使用者和实现者之间构建起了一道“防火墙”。抽象类型的规格说明(包含操作的说明)应该只关注使用者可见的部分,这包括参数、返回值、可能抛出的异常。例如规格说明需要引用T的值时,它应该是抽象域的值而非表示域。
规格说明不应该谈论具体的表示/实现细节,例如表示域里面的值。它应该认为表示本身(私有区域)对于使用者是不可见的,就像是方法里面的局部变量对外部不可见。这也是为什么我们在注解表示不变量和抽象函数的时候使用的是"\"注释而非典型的Javadoc格式。如果我们使用Javadoc注释的话,内部的实现细节会出现在规格说明中,而这会影响表示独立性以及信息隐藏。
用ADT不变量替换前置条件
良好设计的ADT的一个大优点在于我们可以使用它将本该写在前置条件中的限制封装起来。例如,现在有一个规格说明是这样:
/** * @param set1 is a sorted set of characters with no repeats* @param set2 is likewise* @return characters that appear in one set but not the other,* in sorted order with no repeats */
static String exclusiveOr(String set1, String set2);
我们可以利用ADT(SortedSet)的不变量属性要求这种前置条件:
/** @return characters that appear in one set but not the other */
static SortedSet<Character> exclusiveOr(SortedSet<Character> set1, SortedSet<Character> set2);
这满足了我们所有的要求:
1、远离bug:因为要求的条件(排序、无重复)都已经是ADT的不变量了,所以Java可以对其进行静态检查,在编译期阻止所有不满足的操作。
2、易于理解:因为这样写更简单,并且ADT SortedSet 的名字就已经表明了它该有的属性。
3、可改动:因为我们可以改变 SortedSet 的内部实现而不影响 exclusiveOr 或其他的使用者代码。
如何建立不变量
不变量是一种在程序中一直为真的属性,对于对象而言,就是从对象创建开始一直具有的属性。
为了保持一个不变量,我们需要:
1.确保在对象创建的时候不变量成立
2.确保对对象在接下来的每一个改变后不变量依然成立
1.创建者和生产者必须对新的对象就建立不变量
2.改造者和观察者必须保持/保护这种不变量
3.表示暴露会使得情况更加复杂,如果一个表示被暴露出来,那么程序的任何地方都可能对其进行修改,我们也就没法确保不变量一直成立了。所以使用不变量完整的规则应该是:
结构归纳法. 如果一个抽象数据类型的不变量满足:
被创建者或生产者创建;被改造者和观察者保持;没有表示暴露。
那么这种类型的所有实例的不变量都是成立的。
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
相关文章
- 中国自主视频生态技术
目录写在题前音视频格式规范发展历程对于国内自己的音视频标准一些想法关于5G的一些想法 写在题前 今天看了王荣刚老师的关于数字解码技术的,事实上看的有点迷迷糊糊,本科四年虽然说是计算机科班出身,但是只是会点基于SSM框架的web开发。这里我就谈谈看完视频后我对AVS2超高…...
2024/4/24 7:14:45 - Linux 解决network is unreachable
修改ifcfg-enp0s3中的配置将no改为yes,然后重启系统(reboot) 有人说重启之后执行service network restart就可以ping外网了 (我没有执行成功,但是可以ping外网了)。 转载自(https://blog.csdn.net/qq_42074075/article/details/94360077?utm_medium=distribute.pc_rele…...
2024/4/24 7:14:45 - GUI编程概述
GUI编程 组件:窗口弹窗面板文本框列表框按钮图片监听事件鼠标事件键盘事件 GUI的的核心技术:Swing/ AWT一.AWT 介绍:抽象的窗口工具,包含很多的类和接口 元素:窗口,按钮,文本框 1.1组件和容器Frame 顶级窗口package com.wangxu.lesson01;import java.awt.*;//GUI的第一个…...
2024/4/24 7:14:47 - Spring 05事务控制
1. Spring中事务控制的API 1.1 PlatformTransactionManager接口 它是Spring提供的事务管理器,它提供了操作事务的方法如下:TransactionStatus getTransaction(TransactionDefinition definition): 获得事务状态信息 void commit(TransactionStatus status): 提交事务 void roll…...
2024/4/16 21:10:52 - 分布式tensorflow学习踩坑
环境: macOS 10.15.4 python 3.7.4 spark 3.0.2_preview tensorflow 2.1.0 temsorflowONspark andrew@1macbook:~/tensorflowonspark/TensorFlowOnSpark/examples/resnet#${SPARK_HOME}/bin/spark-submit --master ${MASTER} --conf spark.cores.max=${TOTAL_CORES} --conf sp…...
2024/4/16 21:11:16 - 判决素数个数(信息学奥赛一本通-T1409) 两种函数算法
第一种算法,参考自这里: #include <iostream> #include <cstdlib> #include <string> #include<cmath> using namespace std; bool jisuan(int x); int main(){ int x,y; int i; int sum=0; cin>>x>>y; for(i=x;i<=y;i++)if(jisuan(i…...
2024/4/16 21:10:40 - JPA、Hibernate、Spring Data JPA 的关系,你懂吗?
来源:oschina https://my.oschina.net/u/3080373/blog/1828589什么是JPA? 全称Java Persistence API,可以通过注解或者XML描述【对象-关系表】之间的映射关系,并将实体对象持久化到数据库中。 为我们提供了: 1)ORM映射元数据:JPA支持XML和注解两种元数据的形式,元数据描…...
2024/4/15 7:21:22 - npm中package-lock的resolevd冲突
前言 上次讲到用package-lock锁版本来保证项目的一致性和稳定性。但在使用过程中,发现同一项目的不同开发,在install安装依赖之后,package-lock.json文件会出现冲突,下面将针对这些问题进行探究和解决。一、合分支时由于版本不同造成的冲突 简而言之,就是两个开发人员安装…...
2024/4/16 21:10:40 - django POST请求 from表单,多次button url相加的问题
action="/lizhiding/savefile/" 提交表单之后,正常调用IP:/lizhiding/savefile/ action=“lizhiding/savefile/” 提交表单之后,调用IP:当前url/后追加 lizhiding/savefile/ 可能是内部的偶中匹配机制所导致,简而言之,就是一个 / 的问题。...
2024/4/16 21:11:04 - 搭建react脚手架
搭建react脚手架 1,安装node.js(检查安装成功 输入node -v和npm -v,成功出现版本号) 2,使用淘宝的cnpm,同时设置镜像地址(检查淘宝镜像是否安装成功 cnpm -v)指令:npm install -g cnpm --registry=https://registry.npm.taobao.org 3,全局安装react脚手架 命令窗口输…...
2024/4/16 21:11:16 - spark的client模式和cluster模式用法上的区别
运行模式启动命令备注client模式spark-shell --master yarn支持shell,client模式可以在 命令行中省去deploy-mode命令项cluster模式spark-submit --master yarn --deploy-mode cluster不支持shell...
2024/4/16 21:11:16 - VS2017 安装QT插件遇见的问题
VS2017 安装QT插件遇见的问题: 问题描述:“未能正确加载VSIX包”。在安装VS2017完成后,在工具的插件和扩展中下载了qt插件,下载完成后,关闭vs2017,自动安装时,出现该错误。解决方法1:在我的电脑中找到ComponentModelCache文件夹,然后将Microsoft.VisualStudio.Default…...
2024/4/24 7:14:43 - 基于 Android Q 10.0 系统 Activity启动流程探索
基于 Android Q 10.0 系统 Activity启动流程探索 推荐一个看Android源码的地址: Android Code Search文章目录1 MainActivity.java2 Activity.java3 Instrumentation.java4 ActivityTaskManager.java5 ActivityTaskManagerService.java6 ActivityStarter.java7 RootActi…...
2024/4/24 7:14:44 - Git 修改已提交的commit注释
两种情况: 一、修改最后一次注释 1、在命令行输入如下命令,然后回车:git commit --amend2、在命令行的最上面会显示上次提交的备注,然后我们需要进入编辑模式进行修改,按i键 3、开始编辑,修改备注 4、修改完成后,按Esc退出编辑模式 5、再按组合键 Shift + : 6、输入wq,…...
2024/4/24 7:01:23 - Linux Deploy:为当前的手机安装Linux系统
1.声明 当前内容主要用于本人学习和复习之用,内容包括如何让为当前的手机安装Linux Deploy和为手机开启Linux 注意前提条件:手机存储必须大于2G、手机必须root 当前资源的Linux Deploy:Linux Deploy 2.配置Linux2.选择安装的Linux版本和拉取的mirror(本人选择CentOS7,选择的…...
2024/4/24 7:01:23 - 关于麦风定制包问题记录
因为部分需求原因,导致需要定制包(mac版) 1:找到xml文件,以iTransor为例,路径一般情况下为:iTransor_Whatsapp/Project/output/Mac_Release/Resources/Language/main 修改多语言版本中的xml文件(指定需要定制包的语言) 2:代码中找到相关位置,增加相应需求,如下所示:…...
2024/4/24 7:01:19 - FinTech头条丨携手创新,神州信息、青海农信签署《金融科技战略合作》协议
2020年5月22日上午,青海农信党委书记、理事长王兴源带队到访神州信息西安研发基地考察交流,神州信息高级副总裁赵文甫及研发基地相关负责人陪同。双方就加深在金融科技领域合作达成系列共识,并签署《金融科技战略合作》协议。未来双方将携手加强在金融科技领域方面合作,一方…...
2024/4/24 7:01:20 - Centos7连通外网和连通主机问题
应用程序->设置添加上ens33,自动获取即可。...
2024/4/24 7:01:24 - Python123 练习9
文章目录1.两数之和2.九宫格输入3.字典查询4.列表插入5.列表删除6.二分法求平方根7.判断素数函数 1.两数之和给定一个整数列表 nums 和一个目标值 target,请你在该数组中找出和为目标值的那两个整数,并返回他们的列表索引。…...
2024/4/24 7:01:23 - AS中完成百度地图定位
使用Android Studied完成百度地图定位项目需求截图展示实现 项目需求 根据百度地图开发者文档,编写百度地图定位程序,在地图上标出自己现在的位置 完整代码 截图展示 (由于as定位偏差和网络问题,图中定位与真实定位发生偏差)实现 (1)在官网中获取百度地图移动版开发密钥…...
2024/4/24 7:01:14
最新文章
- 基于Springboot的教学资源共享平台(有报告)。Javaee项目,springboot项目。
演示视频: 基于Springboot的教学资源共享平台(有报告)。Javaee项目,springboot项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构…...
2024/5/3 13:53:17 - 梯度消失和梯度爆炸的一些处理方法
在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言,在此感激不尽。 权重和梯度的更新公式如下: w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...
2024/3/20 10:50:27 - 01背包问题 小明的背包
2.小明的背包1 - 蓝桥云课 (lanqiao.cn) #include <bits/stdc.h> using namespace std; const int N1010;//开始写的105 开小了 样例过了但最后只过了很少一部分 int n,m; int v[N],w[N]; int f[N][N];int main() {cin>>n>>m;for(int i1;i<n;i){cin>&…...
2024/4/30 7:25:11 - 算法四十天-删除排序链表中的重复元素
删除排序链表中的重复元素 题目要求 解题思路 一次遍历 由于给定的链表是排好序的,因此重复的元素在链表中的出现的位置是连续的,因此我们只需要对链表进行一次遍历,就可以删除重复的元素。 具体地,我们从指针cur指向链表的头节…...
2024/5/1 13:07:13 - 【外汇早评】美通胀数据走低,美元调整
原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...
2024/5/1 17:30:59 - 【原油贵金属周评】原油多头拥挤,价格调整
原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...
2024/5/2 16:16:39 - 【外汇周评】靓丽非农不及疲软通胀影响
原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...
2024/4/29 2:29:43 - 【原油贵金属早评】库存继续增加,油价收跌
原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...
2024/5/2 9:28:15 - 【外汇早评】日本央行会议纪要不改日元强势
原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...
2024/4/27 17:58:04 - 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响
原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...
2024/4/27 14:22:49 - 【外汇早评】美欲与伊朗重谈协议
原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...
2024/4/28 1:28:33 - 【原油贵金属早评】波动率飙升,市场情绪动荡
原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...
2024/4/30 9:43:09 - 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试
原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...
2024/4/27 17:59:30 - 【原油贵金属早评】市场情绪继续恶化,黄金上破
原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...
2024/5/2 15:04:34 - 【外汇早评】美伊僵持,风险情绪继续升温
原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...
2024/4/28 1:34:08 - 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势
原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...
2024/4/26 19:03:37 - 氧生福地 玩美北湖(上)——为时光守候两千年
原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...
2024/4/29 20:46:55 - 氧生福地 玩美北湖(中)——永春梯田里的美与鲜
原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...
2024/4/30 22:21:04 - 氧生福地 玩美北湖(下)——奔跑吧骚年!
原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...
2024/5/1 4:32:01 - 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!
原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...
2024/4/27 23:24:42 - 「发现」铁皮石斛仙草之神奇功效用于医用面膜
原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...
2024/4/28 5:48:52 - 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者
原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...
2024/4/30 9:42:22 - 广州械字号面膜生产厂家OEM/ODM4项须知!
原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...
2024/5/2 9:07:46 - 械字号医用眼膜缓解用眼过度到底有无作用?
原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...
2024/4/30 9:42:49 - 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...
解析如下:1、长按电脑电源键直至关机,然后再按一次电源健重启电脑,按F8健进入安全模式2、安全模式下进入Windows系统桌面后,按住“winR”打开运行窗口,输入“services.msc”打开服务设置3、在服务界面,选中…...
2022/11/19 21:17:18 - 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。
%读入6幅图像(每一幅图像的大小是564*564) f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...
2022/11/19 21:17:16 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...
win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面,在等待界面中我们需要等待操作结束才能关机,虽然这比较麻烦,但是对系统进行配置和升级…...
2022/11/19 21:17:15 - 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...
有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows,请勿关闭计算机”的提示,要过很久才能进入系统,有的用户甚至几个小时也无法进入,下面就教大家这个问题的解决方法。第一种方法:我们首先在左下角的“开始…...
2022/11/19 21:17:14 - win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...
置信有很多用户都跟小编一样遇到过这样的问题,电脑时发现开机屏幕显现“正在配置Windows Update,请勿关机”(如下图所示),而且还需求等大约5分钟才干进入系统。这是怎样回事呢?一切都是正常操作的,为什么开时机呈现“正…...
2022/11/19 21:17:13 - 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...
Win7系统开机启动时总是出现“配置Windows请勿关机”的提示,没过几秒后电脑自动重启,每次开机都这样无法进入系统,此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一:开机按下F8,在出现的Windows高级启动选…...
2022/11/19 21:17:12 - 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...
有不少windows10系统用户反映说碰到这样一个情况,就是电脑提示正在准备windows请勿关闭计算机,碰到这样的问题该怎么解决呢,现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法:1、2、依次…...
2022/11/19 21:17:11 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...
今天和大家分享一下win7系统重装了Win7旗舰版系统后,每次关机的时候桌面上都会显示一个“配置Windows Update的界面,提示请勿关闭计算机”,每次停留好几分钟才能正常关机,导致什么情况引起的呢?出现配置Windows Update…...
2022/11/19 21:17:10 - 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...
只能是等着,别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚,只能是考虑备份数据后重装系统了。解决来方案一:管理员运行cmd:net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...
2022/11/19 21:17:09 - 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?
原标题:电脑提示“配置Windows Update请勿关闭计算机”怎么办?win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢?一般的方…...
2022/11/19 21:17:08 - 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...
关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!关机提示 windows7 正在配…...
2022/11/19 21:17:05 - 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...
钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...
2022/11/19 21:17:05 - 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...
前几天班里有位学生电脑(windows 7系统)出问题了,具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面,长时间没反应,无法进入系统。这个问题原来帮其他同学也解决过,网上搜了不少资料&#x…...
2022/11/19 21:17:04 - 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...
本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法,并在最后教给你1种保护系统安全的好方法,一起来看看!电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中,添加了1个新功能在“磁…...
2022/11/19 21:17:03 - 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...
许多用户在长期不使用电脑的时候,开启电脑发现电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机。。.这要怎么办呢?下面小编就带着大家一起看看吧!如果能够正常进入系统,建议您暂时移…...
2022/11/19 21:17:02 - 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...
配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!配置windows update失败 还原更改 请勿关闭计算机&#x…...
2022/11/19 21:17:01 - 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...
不知道大家有没有遇到过这样的一个问题,就是我们的win7系统在关机的时候,总是喜欢显示“准备配置windows,请勿关机”这样的一个页面,没有什么大碍,但是如果一直等着的话就要两个小时甚至更久都关不了机,非常…...
2022/11/19 21:17:00 - 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...
当电脑出现正在准备配置windows请勿关闭计算机时,一般是您正对windows进行升级,但是这个要是长时间没有反应,我们不能再傻等下去了。可能是电脑出了别的问题了,来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...
2022/11/19 21:16:59 - 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...
我们使用电脑的过程中有时会遇到这种情况,当我们打开电脑之后,发现一直停留在一个界面:“配置Windows Update失败,还原更改请勿关闭计算机”,等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢࿰…...
2022/11/19 21:16:58 - 如何在iPhone上关闭“请勿打扰”
Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...
2022/11/19 21:16:57