假设我们想要使用以下命令在Windows中创建一个空文件:
type nul > C:\does\not\exist\file.txt
Run Code Online (Sandbox Code Playgroud)
目录不存在,所以我们得到错误:
The system cannot find the path specified
Run Code Online (Sandbox Code Playgroud)
如果你打印%errorlevel%
输出是:
echo %errorlevel%
0
Run Code Online (Sandbox Code Playgroud)
但命令没有成功!
我注意到,%errorlevel%
如果你使用重定向,窗口不会设置最后一个命令.
有没有解决的办法?
类在构造函数中A
调用public方法f()
.B类f()
使用自己的实现覆盖方法.
假设你intantiate对象B
..方法f()
对象B
将在对象的构造函数被调用A
,虽然对象B
未完全初始化.
谁能解释这种行为?
编辑:是的,它不推荐练习..但我不明白为什么 Java不调用f()
基类的实现A
而不是"伸出"到f()
派生类的实现B
.
码:
class A {
A() {
System.out.println("A: constructor");
f();
}
public void f() {
System.out.println("A: f()");
}
}
class B extends A {
int x = 10;
B() {
System.out.println("B: constructor");
}
@Override
public void f() {
System.out.println("B: f()");
this.x++;
System.out.println("B: x = " + x);
}
}
public …
Run Code Online (Sandbox Code Playgroud) 如何获得活动的当前屏幕亮度?
以下方法可以通过调用以下方法将亮度设置为最大值setBrightness(100)
:
private void setBrightness(int brightness) {
WindowManager.LayoutParams layoutParams = getWindow().getAttributes();
layoutParams.screenBrightness = brightness/100.0f;
getWindow().setAttributes(layoutParams);
}
Run Code Online (Sandbox Code Playgroud)
我试图实现以下目标:
非常感谢!
比方说,我们有一个叫做基类A
和某些子类(B
,C
,D
等).大多数子类都有方法,do()
但基类没有.类AA
提供了一个名为方法getObject()
,这将创造类型的对象B
,或C
或者D
,等等,但返回的对象类型A
.
do()
如果此方法可用,如何将返回的对象强制转换为具体类型并调用其方法?
编辑:
我不允许更改类A
,子类的实现,或者AA
,因为我使用一个封闭的源API ..是的,它确实有一些设计问题,你可以看到.
假设我想在 java 中动态加载一个类并调用它的start()
(没有参数)方法:
Class<?> c = Class.forName("AbuseMe");
c.getMethod("start").invoke(c.newInstance());
Run Code Online (Sandbox Code Playgroud)
这是一个好的/安全的方法吗?
如何通过另一个线程通过setBackgroundColor()更改LinearLayout的背景?
我了解到,Android UI Framework不是线程安全的,所以你不能通过另一个线程而不是UI线程来更改UI元素.
我的目标是通过调用setBackgroundColor()方法来创建一个频闪灯光效果,该方法在填充整个屏幕的LinearLayout上改变颜色(在这种情况下为黑/白/黑/等).
我有一个属性文件,它存储服务器的名称和端口.这些值将在a中使用Enum
,以便能够在不触及代码的情况下更改值.
该属性的内容如下所示:
PROD=FTPROD01:1122
Run Code Online (Sandbox Code Playgroud)
问题是我必须拆分服务器和端口号,因为我使用这些值作为方法的参数:
server = properties.getProperty(this.name(), "").split(":")[0];
try {
port = Integer.valueOf(properties.getProperty(this.name(), "").split(":")[1]);
} catch (ArrayIndexOutOfBoundsException e) {
System.err.println("error");
}
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,即时捕获ArrayIndexOutOfBoundsException
,这是一个运行时异常,以便检测是否缺少第二个值,因为如果属性文件"损坏",程序将崩溃.
这是获取多个值的好方法,还是有更优雅的其他方法?
java ×4
android ×2
batch-file ×2
inheritance ×2
reflection ×2
windows ×2
arrays ×1
casting ×1
class ×1
constructor ×1
exception ×1
filepattern ×1
glob ×1
invoke ×1
methods ×1
overriding ×1
polymorphism ×1
properties ×1
types ×1
unix ×1