RunTime.exec("這里是命令");
那就首先說點Runtime類吧,他是一個與JVM運行時環境有關的類,這個類是Singleton的。我說幾個自己覺得重要的地方。
1、Runtime.getRuntime()可以取得當前JVM的運行時環境,這也是在Java中唯一一個得到運行時環境的方法。
2、Runtime上其他大部分的方法都是實例方法,也就是說每次進行運行時調用時都要用到getRuntime方法。
3、Runtime中的exit方法是退出當前JVM的方法,估計也是唯一的一個吧,因為我看到System類中的exit實際上也是通過調用Runtime.exit()來退出JVM的,這里說明一下Java對Runtime返回值的一般規則(後邊也提到了),0代表正常退出,非0代表異常中止,這只是Java的規則,在各個操作系統中總會發生一些小的混淆。
4、Runtime.addShutdownHook()方法可以注冊一個hook在JVM執行shutdown的過程中,方法的參數只要是一個初始化過但是沒有執行的Thread實例就可以。(注意,Java中的Thread都是執行過了就不值錢的哦)
5、說到addShutdownHook這個方法就要說一下JVM運行環境是在什麼情況下shutdown或者abort的。文檔上是這樣寫的,當最後一個非精靈進程退出或者收到了一個用戶中斷信號、用戶登出、系統shutdown、Runtime的exit方法被調用時JVM會啟動shutdown的過程,在這個過程開始後,他會並行啟動所有登記的shutdown hook(注意是並行啟動,這就需要線程安全和防止死鎖)。當shutdown過程啟動後,只有通過調用halt方法才能中止shutdown的過程並退出JVM。
那什麼時候JVM會abort退出那?首先說明一下,abort退出時JVM就是停止運行但並不一定進行shutdown。這只有JVM在遇到SIGKILL信號或者windows中止進程的信號、本地方法發生類似於訪問非法地址一類的內部錯誤時會出現。這種情況下並不能保證shutdown hook是否被執行。
❷ Java怎樣鎖鍵盤
我們可以查閱api文檔,可以發現在 toolkit 類中呢,有個
setLockingKeyState方法,使用方法如下:
public voidsetLockingKeyState(int keyCode,
boolean on)
設置鍵盤上給定鎖定鍵的狀態。有效鍵代碼是
VK_CAPS_LOCK
、
VK_NUM_LOCK
、
VK_SCROLL_LOCK
和
VK_KANA_LOCK
。
根據不同的平台,設置鎖定鍵的狀態可能涉及事件處理,因此不能立即通過 getLockingKeyState 觀察到。
拋出:
IllegalArgumentException- 如果keyCode不是有效鍵代碼之一
UnsupportedOperationException- 如果主機系統不允許以編程方式設置此鍵的狀態,或者鍵盤沒有此鍵
HeadlessException- 如果
GraphicsEnvironment.isHeadless() 返回 true
。
ToolKit.getDefaultToolKit().setLockingKeyState(KeyEvent.VK_NUM_LOCK,false);
這樣我們就鎖定了鍵盤上的數字鍵盤哦,大家還可以試一下
VK_CAPS_LOCK、VK_SCROLL_LOCK和VK_KANA_LOCK
❸ java代碼如何控制鍵盤操作其它應用軟體急,在線等
新的Timer()的日程安排(新的TimerTask的(){
公共無效的run(){
System.exit(0);
}},5000),5秒自動運行,運行的內容setRepeats (未來),5秒一個周期自動運行。程序的輸入方法,這兩者沒有什麼區別
如果是其他的方式,System.exit(0)直接終止程序,即使後面的代碼不會被執行
而返回返回到調用的方法的地方,如果有代碼繼續執行
但對於在ANDROID線程一些限制的安全性。可以使用下面的方法。最後的處理程序處理程序=新的Handler(){
無效的handleMessage(消息msg){
開關(msg.what){
案例1:
/ /加執行方法。
突破;
}
super.handleMessage(MSG);
}
};
imerTask任務,新的TimerTask (){
公共無效的run(){
消息消息消息();
message.what = 1;
handler.sendMessage(消息);
}
};
定時器定時器=新的Timer();
timer.schele(任務和5000);/ / 5秒延遲
❹ java 如何實現鍵盤控制
下面是我給你寫的一段程序,你運行一下:
import javax.swing.*;
import java.awt.*;
public class SimpleEditor1 extends JFrame{
SimpleEditor1(){
setTitle("Simple Editor");
setSize(400,400);
Container contentPane=getContentPane();
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JTextPane textPane = new JTextPane( );
JScrollPane scrollPane = new JScrollPane(textPane);
contentPane.add(scrollPane);
setVisible(true);
}
public static void main(String args[])
{
SimpleEditor1 hahaha =new SimpleEditor1();
}
}
如果你用的是swing組件的話,你在寫字板的容器里添加一個JTextPane,該組件的目的就是接收鍵盤的輸入.
有什麼不回的給我留言就行了.
❺ 求助:Java控制鍵盤
CTRL在jdk中是沒有改常量的,他被修改為KeyEvent.VK_CONTROL
❻ 如何用java的jna模擬鍵盤按鍵
這個比較簡單的,用 java.awt.Robot 來實現就行了。
Robot 對象有幾個個方法就是操作鍵盤的:
void keyPress(int kc);
void keyRelease(int kc);
//例子
import java.awt.AWTException;
import java.awt.Robot;
import java.awt.event.KeyEvent;
public class RobotTest {
private static Robot rbt;
static{
try {
rbt=new Robot();
} catch (AWTException e) {e.printStackTrace();}
}
//按下
static void press(int kc){rbt.keyPress(kc);}
//釋放
static void release(int kc){rbt.keyRelease(kc);}
static void type(int kc){press(kc);release(kc);}
public static void main(String[] args) {
//F7 長按
//press(KeyEvent.VK_F7);
//F7按一下
type(KeyEvent.VK_F7);
//...
}
}
❼ JAVA控制鍵盤大小寫
這個控制不了鍵盤的。 只能根據用戶的輸入判斷 是大就轉換成小。是小就轉換成大寫
❽ Java控制台中如何直接響應鍵盤操作
import java.awt.event.*;
Class KeyBoard implements KeyListener{
Component comp; //定義一個鍵盤類的句柄
public static void main(String args[]){
KeyBoard kb=new KeyBoard();
kb.AddListener();
}
public void AddListener(){
comp=new Component(); //用這個句柄指向一個鍵盤類的對象
comp.addKeyListener(this);//將本身這個類添加為對鍵盤的監聽器
}
public void keyTyped(KeyEvent e){ //這個方法是從介面里繼承的
//實現你需要的按鈕和相應的輸出值
//具體方法請查閱KeyEvent類的API
}
}
最後說明下,這里將類本身作為了鍵盤的監聽器,事實上,你可以將任何類作為事件源的監聽器,只要繼承相應的介面,並實現響應事件的函數即可,相關內容請查閱和事件有關的API。
❾ 如何用JAVA程序控制滑鼠和鍵盤
你的意思是不同程序之間進行信息交流?
1。你可以寫一個伺服器,負責接收信息以及發送信息
2。然後java程序可以用Socket和伺服器連接,伺服器可以接受java程序發送來的消息並且轉發。
而java程序可以在滑鼠點擊或者鍵盤事件發生時想伺服器發送信息
3。游戲也是通過Socket和伺服器連接,游戲可以接受伺服器發送來的消息進行處理。
❿ java 控制數字移動 鍵盤
我不知道你說的是什麼時間,你這個代碼是無法實現你所達到的目的。因為對於 KEY_TYPED 事件,該 e.getKeyCode() 始終返回 VK_UNDEFINED。所以沒有反應,請使用keyReleased()方法等。
import java.applet.Applet;
import java.awt.*;
import java.awt.event.*;
public class TestKeyListener extends Applet{
Color clr;
public void init(){
addKeyListener(
new KeyAdapter(){
public void keyReleased(KeyEvent e){ //修改部分
if(e.getKeyCode()==e.VK_UP)
{
clr=Color.red;
}
else if(e.getKeyCode()==e.VK_DOWN)
{
clr=Color.blue;
}
else if(e.getKeyCode()==e.VK_LEFT)
{
clr=Color.yellow;
}
else if(e.getKeyCode()==e.VK_RIGHT)
{
clr=Color.green;
}
setBackground(clr);
}
}
);
}
}