我的问题是:从其字符串名称实例化一个类,该名称描述了如何在拥有名称时实例化一个类.有没有办法在Java中做到这一点?我将拥有包名和类名,我需要能够创建具有该特定名称的对象.
我试图在我的应用程序上以红色阴影绘制一个矩形,但我需要使它变得透明,以便它下面的组件仍然显示.但是我仍然想要一些颜色仍然会显示.我正在绘制的方法如下:
protected void paintComponent(Graphics g) {
if (point != null) {
int value = this.chooseColour(); // used to return how bright the red is needed
if(value !=0){
Color myColour = new Color(255, value,value );
g.setColor(myColour);
g.fillRect(point.x, point.y, this.width, this.height);
}
else{
Color myColour = new Color(value, 0,0 );
g.setColor(myColour);
g.fillRect(point.x, point.y, this.width, this.height);
}
}
}
Run Code Online (Sandbox Code Playgroud)
有谁知道我怎么能让红色阴影有点透明?我不需要它完全透明.
我想使用sun.misc.BASE64Encoder包的Base64编码器,因为我需要编码密码.但是,当我输入此包的导入时,会生成错误.
要使用编码器代码的消息如下:
private synchronized static String hash(final String username, final String password) {
DIGEST.reset();
return new BASE64Encoder().encode(DIGEST.digest((username.toLowerCase() + password).getBytes()));
}
Run Code Online (Sandbox Code Playgroud)
在java中是否有一个同等的类做同样的事情?或许,有人知道如何能够获得原始类的代码吗?
谢谢 :)
我是一名正在学习论文的学生,我希望能够访问开源软件,但是他们需要使用Swing GUI.如果它们也有不同的版本,那就太棒了.你们中的任何人都可能知道可以找到这些类型的应用程序的网站吗?非常感谢你的帮助.
我试图获取组件的坐标,例如标签.我尝试了getBounds和getLocation,但是如果标签位于2个或更多面板上,它们就不会给出准确的坐标.除了getLocationOnScreen,有没有办法能够获得准确的组件坐标,即使它们在多个面板上?
我正在尝试在测试中使用模拟对象.但是,当我尝试列出模拟对象的期望时,抛出相同的异常.
以下是异常的堆栈跟踪:
java.lang.SecurityException: class "org.hamcrest.TypeSafeMatcher"'s signer information does not match signer information of other classes in the same package
at java.lang.ClassLoader.checkCerts(Unknown Source)
at java.lang.ClassLoader.preDefineClass(Unknown Source)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$000(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$000(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at …
Run Code Online (Sandbox Code Playgroud) 我使用反射来获取特定类的DeclaredFields.有没有办法能够检索特定类的超类的字段?
我正在尝试使用Java获取项目中所有类的列表,并且我想确定main方法所在的类.有没有办法能够识别一个类正在实现main方法,而不是实际查看类本身的代码?
我已实现以下内容,但返回值始终为false.有谁知道为什么会这样?
Class<?> c = "edu.tool.parsing.A".getClass();
boolean hasMain = true;
try {
c.getMethod("main", String[].class);
hasMain=true;
} catch (SecurityException e) {
hasMain = true;
} catch (NoSuchMethodException e) {
hasMain=false;
}
Run Code Online (Sandbox Code Playgroud) 我正在使用refection来获取类的声明字段.现在我只需要选择那些UI组件,例如JLabel,JFrame等.有没有办法能够确定特定类型是否扩展了java.awt.Compoenent?
我确实设法获得该字段的泛型类型,但我需要的是能够确定该字段是否扩展组件
我正在尝试将String日期转换为Date对象,如下所示:
DateFormat formatter ;
Date date ;
formatter = new SimpleDateFormat("dd/mm/yyyy");
date = (Date)formatter.parse(str_date);
Run Code Online (Sandbox Code Playgroud)
但出于某种原因,这个月总是被转换为1月.
输入日期示例:18/08/2012输出日期:2012年1月18日星期三00:08:00 CET 2012
有谁知道为什么会这样吗?
我需要访问java源文件,我使用String的方法trim()来删除任何前导和尾随空格.但是代码是一些范围,例如:
if(name.equals("joe")){
System.out.println(name);
}
Run Code Online (Sandbox Code Playgroud)
打印声明的空格不会被完全删除.有没有办法能够删除这些白色空间吗?
谢谢
编辑:我确实使用了一个新变量:
String n = statements.get(i).toString().trim();
System.out.println(n);
Run Code Online (Sandbox Code Playgroud)
但输出仍然如下:
System.out.println("NAME:" + m.getName());
BlockStmt bs = m.getBody();
List<Statement> statements = bs.getStmts();
for (int i = 0; i < statements.size(); i++) {
if ((statements.get(i).toString().trim().contains(needed)) & (statements.get(i).toString().trim().length() == needed.length())) {
System.out.println("HEREEEEEEEEEEEEEEEEEEEEEEEEEE");
}
}
Run Code Online (Sandbox Code Playgroud)
一些字符串仍然预先包含空格
java ×11
swing ×4
reflection ×2
string ×2
base64 ×1
colors ×1
components ×1
coordinates ×1
date ×1
encoder ×1
expectations ×1
field ×1
formatting ×1
hash ×1
junit ×1
mocking ×1
object ×1
open-source ×1
parsing ×1
superclass ×1
translucency ×1
trim ×1