有没有办法从Android Studio导出快捷方式?例如,如果我想重新安装我的操作系统,我不想在此之后手动设置所有快捷方式.提前致谢.
我正在学习反思.当我执行以下代码时:
package main;
import java.lang.reflect.Field;
public class Main {
public static void main(String[] args) throws NoSuchFieldException, SecurityException {
Base firstBase = new Base();
Field firstBaseField = firstBase.getClass().getDeclaredField("protectedBuffer");
System.out.println(firstBaseField.isAccessible());
}
}
Run Code Online (Sandbox Code Playgroud)
这是基类:
package main;
public class Base {
private StringBuffer buffer;
protected StringBuffer protectedBuffer;
public StringBuffer buffer2;
}
Run Code Online (Sandbox Code Playgroud)
结果是错误的.但这不是真的,因为我可以这样访问protectedBuffer:firstBase.protectedBuffer?
我尝试按照android API GUIdes制作我的自定义插补器.所以这就是插补器.
<?xml version="1.0" encoding="utf-8"?>
<customInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
android:factor="2"
/>
Run Code Online (Sandbox Code Playgroud)
但是当我尝试在动画中使用它时:
<?xml version="1.0" encoding="utf-8"?>
<scale xmlns:android="http://schemas.android.com/apk/res/android">
android:fromXScale="1"
android:toXScale="5"
android:duration="3000"
android:interpolator="@anim/custom_interpolator"/>
</scale>
Run Code Online (Sandbox Code Playgroud)
没有任何反应 - 视图只是刷新自己.这是为什么 ?如果我尝试使用的原因是这样的:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
<scale
android:fromXScale="1"
android:toXScale="5"
android:duration="3000"
android:interpolator="@anim/custom_interpolator"/>
</set>
Run Code Online (Sandbox Code Playgroud)
使用此代码:
AnimationSet animation = (AnimationSet)AnimationUtils.loadAnimation(AnimationActivity.this, R.anim.animation);
animationView.startAnimation(animation);
Run Code Online (Sandbox Code Playgroud)
抛出异常:
java.lang.RuntimeException: Unknown interpolator name: customInterpolator
at android.view.animation.AnimationUtils.createInterpolatorFromXml(AnimationUtils.java:422)
at android.view.animation.AnimationUtils.loadInterpolator(AnimationUtils.java:285)
at android.view.animation.Animation.setInterpolator(Animation.java:391)
at android.view.animation.Animation.<init>(Animation.java:255)
at android.view.animation.ScaleAnimation.<init>(ScaleAnimation.java:63)
at android.view.animation.AnimationUtils.createAnimationFromXml(AnimationUtils.java:119)
at android.view.animation.AnimationUtils.createAnimationFromXml(AnimationUtils.java:115)
at android.view.animation.AnimationUtils.createAnimationFromXml(AnimationUtils.java:92)
at android.view.animation.AnimationUtils.loadAnimation(AnimationUtils.java:73)
at com.example.someone.studyproject.AnimationActivity$4.onClick(AnimationActivity.java:61)
at android.view.View.performClick(View.java:4633)
at android.view.View$PerformClick.run(View.java:19330)
at android.os.Handler.handleCallback(Handler.java:733)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:157)
at …Run Code Online (Sandbox Code Playgroud) 我有以下程序:
public static void main(String[] args) throws Exception{
ForkJoinTask<?> read = ForkJoinPool.commonPool().submit(new Runnable() {
@Override
public void run() {
SecurityManager appsm = System.getSecurityManager();
if (appsm != null) {
appsm.checkPermission(new PropertyPermission("os.arch", "read"));
System.out.println("Permissions are OK!!!!");
} else {
System.out.println("No system mangerrr :(");
}
}
});
read.get();
System.out.println("End of the program!");
}
Run Code Online (Sandbox Code Playgroud)
我还设置了这个系统属性:
-Djava.security.manager
我的问题如下 - 为什么有时我会收到“程序结束!” 写入标准输出,但有时我得到Exception in thread "main" java.util.concurrent.ExecutionException: java.security.AccessControlException: access denied ("java.util.PropertyPermission" "os.arch" "read")?
因为公共池的线程是在没有任何权限的情况下创建的,所以它不应该总是向我抛出这个异常吗?这种行为不应该总是相同的,并且在不同的执行过程中不应该有所不同吗?
我正在使用 Zulu OPEN JDK 8.0.252 从我的 IntelliJ IDE 运行它。
在VS或ReSharper中是否有提取局部变量的快捷方式?我知道有提取字段变量的快捷方式,但我找不到提取局部变量的快捷方式。提前致谢。
当我尝试在IntelliJ中格式化一些JSP文件时,所有行都从头开始.
我应该更改哪些选项以使IntelliJ格式化JSP文件更漂亮?
大家.我有一些关于bash排序的问题.我正在使用Ubuntu 14.04.第一个问题是:为什么我有这个内容的some.txt文件:
b 8
b 9
a 8
a 9
Run Code Online (Sandbox Code Playgroud)
当我输入这个:
sort -n -k 2 some.txt
Run Code Online (Sandbox Code Playgroud)
结果将是:
a 8
b 8
a 9
b 9
Run Code Online (Sandbox Code Playgroud)
这意味着文件首先排序到第二个字段,然后到第一个字段,但我认为这将保持稳定,即
b 8
a 8
...
...
Run Code Online (Sandbox Code Playgroud)
也许如果两行相等则应用词典排序或什么?
第二个问题是:为什么以下不起作用:
sort -n -k 1,2 try.txt
Run Code Online (Sandbox Code Playgroud)
try.txt文件是这样的:
8 2
8 11
8 0
8 5
9 2
9 0
Run Code Online (Sandbox Code Playgroud)
第三个问题不是用于排序,而是在我尝试这样做时出现:
sort blank.txt > blank.txt
Run Code Online (Sandbox Code Playgroud)
在此之后,blank.txt文件为空.这是为什么 ?
今天我读了java面试问题,我读到了这个问题:问题:考虑以下Java代码片段,它初始化两个变量,两者都不是易失性的,两个线程T1和T2正在修改这些值如下,两者都不同步
int x = 0;
boolean bExit = false;
Thread 1 (not synchronized)
x = 1;
bExit = true;
Thread 2 (not synchronized)
if (bExit == true)
System.out.println("x=" + x);
Run Code Online (Sandbox Code Playgroud)
现在告诉我们,线程2是否可以打印"x = 0"?
所以,答案是肯定的.在解释中有"因为没有编译器的任何指令,例如synchronized或volatile,bExit = true可能在编译器重新排序中在x = 1之前出现." 在此之前,我不知道编译器可以在其后的另一行之前执行一行.
为什么重新排序?如果我从不同的线程向控制台打印一些内容 - 应该首先打印的行将在应该打印的行之后打印(如果它们是从同一个线程打印的话)?这对我来说很奇怪(也许,因为我第一次看到这个东西要重新排序).有人可以解释一下吗?
我想知道如何获得使用泛型时程序员编写的运行时类型。例如,如果我class Main<T extends List<String>>和程序员写了类似的东西
Main<ArrayList<String>> main = new Main<>();
Run Code Online (Sandbox Code Playgroud)
我如何通过反射来了解使用了哪个类扩展List<String>?
我很好奇我怎么能做到这一点。用
main.getClass().getTypeParameters()[0].getBounds[]
Run Code Online (Sandbox Code Playgroud)
我只能理解边界类(而不是运行时类)。