小编luk*_*uku的帖子

Windows中的文件重定向和%errorlevel%

假设我们想要使用以下命令在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%如果你使用重定向,窗口不会设置最后一个命令.

有没有解决的办法?

windows error-handling batch-file io-redirection

21
推荐指数
1
解决办法
6285
查看次数

构造函数中的多态方法(Java)

类在构造函数中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)

java polymorphism inheritance constructor overriding

11
推荐指数
2
解决办法
3733
查看次数

Android中的屏幕亮度值

如何获得活动的当前屏幕亮度?

以下方法可以通过调用以下方法将亮度设置为最大值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)

我试图实现以下目标:

  1. 启动活动并保存当前亮度值
  2. 将亮度设置为最大值
  3. 在某些事件中将亮度重置为初始值

非常感谢!

android

8
推荐指数
2
解决办法
1万
查看次数

在Java中转换为具体类和调用方法

比方说,我们有一个叫做基类A和某些子类(B,C,D等).大多数子类都有方法,do()但基类没有.类AA提供了一个名为方法getObject(),这将创造类型的对象B,或C或者D,等等,但返回的对象类型A.

do()如果此方法可用,如何将返回的对象强制转换为具体类型并调用其方法?

编辑: 我不允许更改类A,子类的实现,或者AA,因为我使用一个封闭的源API ..是的,它确实有一些设计问题,你可以看到.

java reflection inheritance types casting

6
推荐指数
1
解决办法
6368
查看次数

文件名全球化Windows与Unix

在Windows标准shell中只能使用通配符吗?

$ ls -1 003[5,8]0
00350
00380
Run Code Online (Sandbox Code Playgroud)

unix windows glob batch-file filepattern

5
推荐指数
1
解决办法
2967
查看次数

在Java中动态加载类并调用方法

假设我想在 java 中动态加载一个类并调用它的start()(没有参数)方法:

Class<?> c = Class.forName("AbuseMe");
c.getMethod("start").invoke(c.newInstance());
Run Code Online (Sandbox Code Playgroud)

这是一个好的/安全的方法吗?

java reflection methods class invoke

5
推荐指数
1
解决办法
1万
查看次数

按Android中的线程更改UI元素

如何通过另一个线程通过setBackgroundColor()更改LinearLayout的背景?

我了解到,Android UI Framework不是线程安全的,所以你不能通过另一个线程而不是UI线程来更改UI元素.

我的目标是通过调用setBackgroundColor()方法来创建一个频闪灯光效果,该方法在填充整个屏幕的LinearLayout上改变颜色(在这种情况下为黑/白/黑/等).

user-interface multithreading android android-linearlayout

0
推荐指数
1
解决办法
2329
查看次数

java.util.Properties多个值ArrayIndexOutOfBoundsException

我有一个属性文件,它存储服务器的名称和端口.这些值将在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 arrays properties exception

0
推荐指数
1
解决办法
666
查看次数