我有一个类狗的列表,它扩展了动物,并有一个以下类型的列表.
ArrayList<Animals> animal = new ArrayList<Animals>();
Run Code Online (Sandbox Code Playgroud)
现在我有另一个班,Puppy,它扩展了Dogs.
并有一个 List<Puppy> puppy = new ArrayList<Puppy>();
现在我想将列表转换animal
为puppy
.可以直接做吗?
我可以这样做.
for (Animals ani: animal){
puppy.add((Puppy) ani)
}
Run Code Online (Sandbox Code Playgroud)
但我想要一个直接的铸造解决方案.可能吗?
String x = new String("xyz");
String y = "abc";
x = x + y;
Run Code Online (Sandbox Code Playgroud)
String
在此代码中将创建多少个对象?
我有一个eclipse rcp应用程序,我在其中创建了一个扩展EditorPart的编辑器.
我想在其close()
编辑器操作中执行一些发布资源工作,因此我想覆盖其关闭操作或在关闭事件之前刚刚采取行动的任何方法.
我曾经尝试过dispose()
但是要迟到了.
或者是否有任何特定的听众倾听近似事件.
我希望有这样的:
@override
public void close()
{
//do something resource release related task.
}
Run Code Online (Sandbox Code Playgroud)
更新:基本上我想拦截编辑器的关闭事件.
在我的应用程序中,我正在使用运行批处理文件的代码,在执行它时我收到一个异常,即当前线程不是所有者。这里要提一下,我的应用是基于eclipse插件开发的。以下是我的代码,请查看并找出问题以帮助我..
/*.......any code.........*/
try
{
Runtime runtime = Runtime.getRuntime();
String cmd = new String(C:\\abc.bat);
process = runtime.exec("\"" + cmd + "\"");
process.wait();
}
catch (Exception e)
{
e.printStackTrace();
}
/***********any code**************/
Run Code Online (Sandbox Code Playgroud) 我有一个SWT应用程序接受java类型的项目,并对所有文件做一些解析机制,它工作正常,但在大型项目中有大量的文件,它开始生成错误:
Java堆空间:java.lang.OutOfMemory
并终止解析.我怎么能通过java编程来处理它,而不是猜测用户的机器配置.
注意:直到现在我尝试了一种机制,我首先计算项目文件,如果它跨越MAX大小,我在这里取1000,在包含50个文件的文件夹块中划分项目并逐个解析它们但它也没有点击,我在一些文件夹解析后得到错误.
java ×5
swt ×2
eclipse ×1
eclipse-rcp ×1
editor ×1
heap-memory ×1
jface ×1
runtime ×1
string ×1