我有一个Java日期对象:
Date currentDate = new Date();
Run Code Online (Sandbox Code Playgroud)
这将给出当前的日期和时间.例:
Thu Jan 12 10:17:47 GMT 2012
Run Code Online (Sandbox Code Playgroud)
相反,我想得到日期,将其更改为一小时后它应该给我:
Thu Jan 12 09:17:47 GMT 2012
Run Code Online (Sandbox Code Playgroud)
最好的方法是什么?
我已经对我希望撤消的git仓库进行了一些更改.
我的git repo看起来像这样:
A-B---- master
\ /
C-D * develop
Run Code Online (Sandbox Code Playgroud)
我在develop分支机构,忘记它与master分支不同,进行了更改develop,将其合并master,然后推送到我的遥控器(称为publish).
因为自B(共同祖先)以来主人没有变化,所以git进行了快进合并.
现在,我的回购看起来像这样:
A-B-C-D master, develop, remotes/publish/master, remotes/publish/develop.
Run Code Online (Sandbox Code Playgroud)
我想恢复最后一次合并,恢复master到B.
从我在如何撤消Git中的最后一次提交中读到的内容?,我曾经git reset sha-of-B将我的master分支恢复到修订版B.
问题:
develop到修订版D?在我的应用中,我通过Chrome自定义标签打开了一个网址.我们知道,当用户点按设备后退按钮或自定义后退按钮时,Chrome自定义标签将会关闭.是否可以通过编程方式关闭Chrome自定义标签,无需用户干预.
有没有更正式/更安全的方法来检查a是否System.Reflection.MethodInfo引用了类的实现而IDisposable.Dispose不是以下?
System.Reflection.MethodInfo methodInfo;
methodInfo = ...; //methodInfo obtaining code here
bool isDisposeMethod = methodInfo.Name == "Dispose";
Run Code Online (Sandbox Code Playgroud)
我已经知道类实现IDisposable,因此Dispose存在,但我使用的PostSharp方面应该在调用时执行特殊功能Dispose(与任何其他类方法相比).
我正在尝试设置PostSharp方面,RunOutOfProcessAttribute以便它适用于:
DoSpecialFunctionAttribute无论成员可访问性如何(public/protected/private/whatever),标记为的任何方法.到目前为止,我RunOutOfProcessAttribute的定义如下:
[Serializable]
[MulticastAttributeUsage(MulticastTargets.Method, TargetMemberAttributes = MulticastAttributes.Public)]
[AttributeUsage(AttributeTargets.Class)]
public class RunOutOfProcessAttribute : MethodInterceptionAspect
{
public override void OnInvoke(MethodInterceptionArgs args)
{
...
}
}
Run Code Online (Sandbox Code Playgroud)
在MulticastAttributeUsageAttribute已经到位的应履行标准1以上,但我还是不知道如何履行标准2,没有简单地复制现有方面的行为变成一个新的属性.
DoSpecialFunctionAttribute无论成员的可访问性如何(public/protected/private/whatever),我如何将此方面应用于标有该方法的任何方法?
在我的系统上,我安装了两个版本的Java-有些程序需要Java 7,有些程序需要Java 8。
Java 8是我的系统默认值,因此当我运行Java 7命令时,我一直在使用:
JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.*.jdk/Contents/Home/ \
java_7_program
Run Code Online (Sandbox Code Playgroud)
我想设置一个别名,以便我可以写
j7 java_7_program
Run Code Online (Sandbox Code Playgroud)
我定义了:
alias j7='JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.*.jdk/Contents/Home/'
Run Code Online (Sandbox Code Playgroud)
但是然后运行j7 java -version产生:
java version "1.8.0_45"
Java(TM) SE Runtime Environment (build 1.8.0_45-b14)
Java HotSpot(TM) 64-Bit Server VM (build 25.45-b02, mixed mode)
Run Code Online (Sandbox Code Playgroud)
该手册页(搜索“别名”)指出,这是作为一个直接替代完成。有什么原因不能解决这个问题?
bash --version 版画 GNU bash, version 4.3.42(1)-release (x86_64-apple-darwin14.5.0)
一个更孤立的示例(减去Java):
$ alias foo='BAR=baz'
$ type foo
foo is aliased to `BAR=baz'
$ foo echo $BAR
[blank line]
Run Code Online (Sandbox Code Playgroud) 我有一个被调用的基类Graph和一个名为的接口IDataTip.
我有很多实现这两者的类,例如:
class TreeGraph : Graph, IDataTip
{
//interface implementation
}
Run Code Online (Sandbox Code Playgroud)
我在想,如果有申报的成员方法的另一个类,使得体的类型需要匹配类既抽象类和接口?
例如,在以下类中:
class GraphExporter
{
public Object GraphWithDataTip {set; get;}
}
Run Code Online (Sandbox Code Playgroud)
我希望能够Object用表明GraphWithDataTip应该继承Graph并实现的东西替换类型IDataTip.有没有办法做到这一点?或者如果没有,有人可以推荐更合理的设计吗?
提前致谢!
我已经定义了以下函数chess_location.h:
inline chess_location operator+(chess_location lhs, const chess_coord& rhs);
Run Code Online (Sandbox Code Playgroud)
然后,在chess_location.cpp:
#include "chess_location.h"
chess_location operator+(chess_location lhs, const chess_coord& rhs) {
//function definition
}
Run Code Online (Sandbox Code Playgroud)
然后在我的main()in中使用此运算符main.cpp,如下所示:
#include "chess_location.h"
int main() {
chess_location_B = chess_location_A + chess_coord;
}
Run Code Online (Sandbox Code Playgroud)
但是,我收到链接器错误,说无法找到运算符:
error LNK2019: unresolved external symbol "class chess_location __cdecl operator+(class chess_location,class chess_coord const &)" (??H@YA?AVchess_location@@V0@ABVchess_coord@@@Z) referenced in function _main
Run Code Online (Sandbox Code Playgroud)
在我看来,链接器并没有将运算符的声明连接到定义,但我不确定为什么.我怀疑我的身体可能有问题const.main.cpp但是,如果我将运算符定义移动到,则所有内容都会编译并正常工作.
知道这个错误来自何处?