java异常

  java抛异常, 捕获异常的使用:

public class ErrorDemo {
public static void main( String args[] ) {
try{
int input0 = Integer.parseInt(args[0]);
int input1 = Integer.parseInt(args[1]);
System.out.println( input0+"/"+ input1 +":" );
System.out.println( input0/input1 );
}catch(ArithmeticException e) {
e.printStackTrace();
}catch(NumberFormatException e) {
e.printStackTrace();
}catch(ArrayIndexOutOfBoundsException e) {
e.printStackTrace();
}catch(Exception e) {
e.printStackTrace();
}
}
}

 

  java, throws Exception的使用

public class throwErrorDemo {
public static float run(int arg0, int arg1) throws Exception{
return arg0/arg1;
}
public static void main(String args[]) {
int input0 = Integer.parseInt(args[0]);
int input1 = Integer.parseInt(args[1]);
try{
float result = run(input0, input1);
System.out.println(result);
}catch(Exception e) {
e.printStackTrace();
}
}
}

 

  java断言

  断言assert的使用

public class AssertDemo {
public static void main(String args[]) {
int arr[] = {1,2,3,4};
assert arr.length==0;
}
}

 

  java包

  java打包成class文件: 

//通过如下代码编译以后, 会自动生成文件夹
javac -d . packageDemo.java

 

//通过这个方式打开java文件
java org.nono.demo.packageDemo

 

 

  java导包

  java导入包的时候并不执行包:

//packageDemo.java
package org.nono.demo;
public class packageDemo {
public void print () {
System.out.println("package");
}
public static void main(String []args) {
System.out.println("test");
}
}

//ImportDemo.java
package org.nono.demo1;
import org.*;
public class ImportDemo {
public static void main(String args[]) {
org.nono.demo.packageDemo demo = new org.nono.demo.packageDemo();
demo.print();
System.out.println("importTest");
}
}

//执行代码
java org.nono.demo1.ImportDemo
//结果
package
importTest
//结论
导入的packageDemo包的main方法并没有执行

 

 

  系统常见包:

  java.lang , java的基本包,java1.0的时候要手动导入, 现在jdk自动导入;

  java.lang.reflect 放射的包, 是java.lang的子包;

  java.util ,此包是java的工具包;

  java.text ,此包围文本的处理类库;

  java.sql ,数据库的操作包;

  java.net, 网络编程的包;

  java.io, 输入输出的包;

  java.awt 图形界面的工具包;

  java.swing 图形的轻量级组件;

  

  import static

  java导入static的demo:

//packageStatic.java
package com.nono;
public class packageStatic {
public static void div(int a, int b) {
System.out.println(a/b);
}
public static void main(String args[]) {

}
}

//packageStatic2.java
package com.enen;
import static com.nono.packageStatic.*;
public class packageStatic2 {
public static void main(String args[]) {
//这边直接调用div方法, 相当于调用自己的静态方法div;
div(2,2);
}
}

 

  打jar包

  打jar包;

jar -cvf my.jar com.nono

 

  使用导入的jar包

  设置classpath为当前的路径和jar包的路径;

set classpath=.;H:\work\java\my.jar

 

  java中的访问权限:

  private:同一类;

  default:同一包的类;

  pretect:不同包的子类;

  public:所有都可以访问;

天道酬勤