JNI:本地接口
Runtime.getRuntime().exec("c:\\windows\\system32\\calc.exe")---调用系统程序(计算器)
Process pro = Runtime.getRuntime().exec("cmd","dir")
面向过程:以逻辑形式穿进代码
面向对象:以不同的功能,分隔为不同模块
public---公开
private ---私有
static---静态,类变量(能共享的变量),调用时不用new
不加static---实例变量,调用时需要new一个
属性:全局变量、成员变量,静态描述一个实例或类;
public void(返回类型,没有返回值) demo(类名) (int(类型) 1,String s){}---定义一个类
默认构造方法—不加void
类抽象—实例化使用;
静态可能会泄露信息
将demo_3的参数先传到text,再在同一类下的参数传给主方法输出;
调用cmd
package com.mtlk.demo;
import java.io.IOException;
import java.io.InputStream;
import java.util.Scanner;
public class demo{
public static void main(String[] strs)throws IOException{
Process pro = Runtime.getRuntime().exec(new String[]{"cmd","/c","ping baidu.com"});
InputStream in = pro.getInputStream();
Scanner sc = new Scanner(in);
while (sc.hasNextLine()){
System.out.println(sc.nextLine());
}
}
}
控制cmd输入
Process
abstract InputStream getInputStream()
获取子进程的输入流。
abstract OutputStream getOutputStream()
获取子进程的输出流。
Runtime
static Runtime getRuntime()
返回与当前 Java 应用程序相关的运行时对象。
Process exec(String[] cmdarray, String[] envp)
在指定环境的独立进程中执行指定命令和变量。
package com.mtlk.demo;
import java.io.IOException;
import java.io.InputStream;
import java.util.Scanner;
public class 控制cmd{
public static void main(String[] strs)throws IOException{
Process pro = Runtime.getRuntime().exec(new String[] {"cmd","/c","ping baidu.com"});
InputStream in = pro.getInputStream();
Scanner sc = new Scanner(in);
while (sc.hasNextLine()){
System.out.println(sc.nextLine());
}
}
}