小编Jas*_*n S的帖子

Java注释的最佳(或至少是好的)指南

必须有一本好的书籍/ PDF/HTML文件,它描述了Java中注释的基本要素和良好实践.我有点知道它们来自其他优秀的Java书籍,但我正在寻找能够教会我大部分知识的东西,以便充分利用它们.(最好用PDF/HTML格式,这样我就可以打印出来并在我的闲暇时阅读,预订也可以,但那些过时了......)

有什么建议?

编辑:我找到了Sun指南,以及来自O'ReillyDevX的类似教程,以及涵盖它们的Effective Java部分......好的,所以我知道它们是什么以及阅读它们的工具,但是并没有告诉我他们在实践中如何使用它们.(除了在Effective Java和O'Reilly上面的一篇文章中提到它们在自动化测试框架中的使用之外)

java annotations

17
推荐指数
1
解决办法
7412
查看次数

导出/导入Eclipse构建路径

我喜欢Eclipse的构建路径功能,但希望与我的蚂蚁保持同步build.xml.有没有办法从文本文件自动导入Eclipse构建路径,或者将Eclipse构建路径导出到文本文件,所以我可以使用ant中的那个文件?(如果我可以访问一个文本文件,我知道我可以弄清楚如何让ant使用该文件作为其javac构建路径)

java eclipse path

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

哪个.jar文件有javax.xml.stream.*?

我的Mac运行Java 1.5再次出现问题....我在哪里获得一个包含javax.xml.stream.XMLInputFactory的.jar文件?我想使用StAX但不知道如何正确设置它.


我似乎无法得到这个设置.我现在已经下载了jaxp-api.jar,jsr173_1.0_api.jar,sjsxp.jar,stax-api-1.0.1.jar,stax2-api-3.0.1.jar和woodstox-core-asl-4.0. 5.jar; 把它们全部放到我的java/lib/ext目录中,确保它们在我的eclipse构建路径上,删除了Mac com.apple.quarantine扩展属性,在.jar文件上做了一个"chmod a + x",然后我仍然会尝试以下错误import javax.xml.stream.XMLInputFactory;

访问限制:由于对所需库的限制而无法访问XMLInputFactory类型/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/lib/ext/jsr173_1.0_api.jar

我需要做什么?

java xml stax

17
推荐指数
2
解决办法
4万
查看次数

如何将Rhino-JavaScript数组转换为Java-Arrays

我有以下内容:

ScriptEngineManager mgr = new ScriptEngineManager();
ScriptEngine jsEngine = mgr.getEngineByName("JavaScript");
jsEngine.eval("function getArray() {return [1,2,3,4,5];};");
Object result = jsEngine.eval("getArray();");
Run Code Online (Sandbox Code Playgroud)

如何将sun.org.mozilla.javascript.internal.NativeArray类型的结果对象转换为相应的java数组?可以告诉我一个工作代码示例吗?它应该适用于String和Integer数组.另外,知道在哪里查找rhino引擎和java之间的其他数据类型转换会很棒.

顺便说一句,我知道这个页面,但我真的在寻找一个有效的代码示例.

java scripting rhino jsr223

17
推荐指数
3
解决办法
2万
查看次数

java:包装已检查异常的标准方法

我有一个相当详细的问题,关于包装已检查异常的正确方法,以及Guava的方式.(道歉,但我想让我的思考过程失败)


标准的Runnable接口如下所示:

public interface Runnable
{
   public void run();
}
Run Code Online (Sandbox Code Playgroud)

哪里run()不能抛出一个检查过的异常.

因此,如果我想要一个Runnable用于包装抛出已检查异常的任务的东西,并且我打算让调用Runnable.run()处理这些异常的东西而不是Runnable.run()本身,我必须将异常包装在未经检查的异常中.

所以有一段时间我用的是:

Runnable r = new Runnable {
   @Override public void run()
   {
       try {
          doNastyStuff();
       }
       catch (NastyException e)
       {
          throw new RuntimeException(e);
       }
   }      
};
Run Code Online (Sandbox Code Playgroud)

然后我可以在上层处理RuntimeException.除了我想,我真正想要的是分别处理一个包装的异常,因为我知道它的语义是包装一个已检查的异常,所以我写了这个帮助类:

/**
 * Wrapped exception: the purpose of this is just to wrap another exception,
 * and indicate that it is a wrapped exception
 */
public class WrappedException extends RuntimeException
{
    /**
     * @param …
Run Code Online (Sandbox Code Playgroud)

java exception guava

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

PySide + QTableView示例

有人能指出我在PySide中的一个简单的QTableView示例吗?

我找到了QTableView文档,但不幸的是他们没有给出一个例子,我对PySide很新,所以我甚至不知道如何开始.(我对Java Swing中的JTable非常熟悉,所以我知道如何使用表模型.)

python qtableview pyside

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

这些错误和警告图标作为java资源在哪里?

我有一个自定义树单元格渲染器,我用它来渲染自定义图标JTree,我真的很喜欢警告图标和JOptionPane分别为警告消息和错误消息显示的错误图标.显然,我可以使用下面的代码来获取我自己使用的图标,但这很重要,需要我实例化我永远不会使用的对话框:

public class ValidationCellRenderer extends DefaultTreeCellRenderer {
    private Icon warnIcon;
    private Icon errorIcon;

    public ValidationCellRenderer() {
        JOptionPane optionPane = new JOptionPane(new Object(), 
            JOptionPane.WARNING_MESSAGE);
        warnIcon = optionPane.getIcon();
        optionPane = new JOptionPane(new Object(), 
            JOptionPane.ERROR_MESSAGE);
        errorIcon = optionPane.getIcon();
    }
}
Run Code Online (Sandbox Code Playgroud)

必须有更好的方法将这些图标作为资源,但我找不到从Java API中执行此操作的简单方法.有人有什么建议吗?

java swing jtree

16
推荐指数
2
解决办法
7960
查看次数

matplotlib - 将图像存储在变量中

我想将matplotlib生成的图像存储在变量raw_data中,以将其用作内嵌图像.

import os
import sys
os.environ['MPLCONFIGDIR'] = '/tmp/'
import matplotlib
matplotlib.use("Agg")
import matplotlib.pyplot as plt

print "Content-type: image/png\n"
plt.plot(range(10, 20))

raw_data = plt.show()

if raw_data:
    uri = 'data:image/png;base64,' + urllib.quote(base64.b64encode(raw_data))
    print '<img src = "%s"/>' % uri
else:
    print "No data"

#plt.savefig(sys.stdout, format='png')
Run Code Online (Sandbox Code Playgroud)

这些功能都不适合我的用例:

  • plt.savefig(sys.stdout,format ='png') - 将其写入stdout.这确实有帮助..因为我必须将图像嵌入到html文件中.
  • 从命令行执行时,plt.show()/ plt.draw()不执行任何操作

html python image matplotlib

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

Java:FontMetrics上升不正确?

当我看到javadoc时,FontMetric.getAscent()我看到:

字体上升是从字体的基线到大多数字母数字字符顶部的距离.Font中的某些字符可能会延伸到字体上升线之上.

但我写了一个快速的演示程序,我看到了这个: 在此输入图像描述

其中每行文本的4条水平线是:

  • 基线位置降低了 getDescent()
  • 基线位置
  • 基线位置提高 getAscent()
  • 基线位置提高 getHeight()

注意getAscent()行和字符顶部之间的空格.我看过大多数字体和大小,总是存在这种差距.(而字体下降看起来恰到好处.)是什么给出的?

package com.example.fonts;

import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.FontMetrics;
import java.awt.Graphics;
import java.awt.GraphicsEnvironment;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Arrays;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JSpinner;
import javax.swing.JTextPane;
import javax.swing.SpinnerNumberModel;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
import javax.swing.event.DocumentEvent;
import javax.swing.event.DocumentListener;

public class FontMetricsExample extends JFrame
{
    static final int marg = 10;
    public FontMetricsExample()
    {
        super(FontMetricsExample.class.getSimpleName());

        JPanel panel = new JPanel(new BorderLayout());
        JPanel fontPanel = …
Run Code Online (Sandbox Code Playgroud)

java fontmetrics

16
推荐指数
2
解决办法
6984
查看次数

Java:jsr166y Phaser的教程/解释

这个问题是两年前提出的,但它提到的资源要么不是很有用(恕我直言),要么链接不再有效.

必须要有一些很好的教程才能理解Phaser.我已经阅读了javadoc,但是我的眼睛茫然,因为为了真正理解javadoc你必须知道如何使用这些类.

有人有什么建议吗?

java concurrency phaser

16
推荐指数
2
解决办法
5500
查看次数