try...catch...finally...三个语句块中如果有return语句的执行顺序。
顺序为try -> catch -> finally -> finally的return -> catch的return
序列化 作用:在一个平台上序列化的对象可以在另一个完全不同的平台上反序列化该对象。
类 ObjectInputStream 和 ObjectOutputStream 是高层次的数据流,它们包含反序列化和序列化对象的方法。
private transient String passwd;
//这个字段的生命周期仅存于调用者的内存中而不会写到磁盘里持久化。
pom.xml //Maven的文件
控制台
import java.util.Scanner;
//在控制台扫描字符
Scanner scan = new Scanner(System.in);
arr[i] = scan.nextInt();//控制台输入12 1 13 4确定可获取到数组
如何输入不确定长度的数组
Scanner scanner = new Scanner(System.in);
String[] strArr = scanner.nextLine().split(" ");
int[] inArr = new int[strArr.length];
for (int i = 0; i < strArr.length; i++) {
inArr[i] = Integer.parseInt(strArr[i]);
}
longL floatf doubled
long lNum = 1234L;
float fNum = 1.23f;
double dNum = 1.23;//等价于 double dNum = 1.23d;
反射
Class loadClass=Thread.currentThread().getContextClassLoader().loadClass("com.baobaotao.reflect.Car");
Car car=Class.getDeclaredConstructor((Class[])null).newInstance();
Method method=Class.getMethod("setColor",String.class).invoke(car,"红旗CA72");
集合
//Set: 无序,不重复
Set<E> extends Collection<E> //比如HashSet
//List: 有序,可重复
List<String> list=new ArrayList<String>();
list.add("Hello");
list.get(0);
//Map:
Map<String, String> map = new HashMap<String, String>();
map.put("1", "value1");
map.get("1")
流
FileInputStream fileInputStream = new FileInputStream("C:/桌面/user.txt");
BufferedInputStream bufferedInputStream = new BufferedInputStream(fileInputStream);
int c;
while ((c = bufferedInputStream.read()) != -1) {
System.out.print((char) c);//打印文件内容
}
HashMap、HashTable区别
HashMap非线程安全,允许有null值,效率高
notify(通知线程我可以用啦)notify和notifyAll都达到相同的效果,都只会有一个线程继续运行。但notifyAll免去了,线程运行完了通知其他线程的必要,因为已经通知过了。