Java基础知识总结 一,数据类型: 1):基本数据类型:byte、short、int、long、float、double、char、boolean 2):引用数据类型: 数组、类、接口。 二,数据结构 java中有几种常用的数据结构,主要分为Collection和map两个主要接口(接口只提供方法,并不提供实现), 而程序中最终使用的数据结构是继承自这些接口的数据结构类。其主要的关系(继承关系)有: Collection------>Collections Collection------>List------>( Vector \ ArrayList \ LinkedList ) Collection------>List------>Vector------>Stack Collection------>Set------>( HashSet \ LinkedHashSet \ SortedSet ) Map----->( Hashtable \ HashMap \ WeakHashMap ) Map----->SortedMap------>TreeMap 三,关键字 访问控制 private protected public 类,方法和变量修饰符 abstract class extends final implements interface native new static strictfp synchronized transient volatile 程序控制 break continue return do while if else for instanceof switch case default 异常处理 try cathc throw throws 包相关 import package 基本类型 boolean byte char double float int long short null true false 变量引用 super this void 保留字 goto const 四,关键字使用场景 import 引入包的关键字 import java.util.*;import java.util.Vector; package 定义包的关键字 package org.and.helloWorld; class 类 public class A(){} 花括号里有已实现方法体,类名需要与文件名相同 interface 接口 public interface B(){} 花括号里有方法体,但没有实现,方法体句子后面是英文分号“:”结尾 abstract 声明抽象 public abstract class C(){} 介于类与接口中间,可以有也可以没有已经实现的方法体 implements 实现 用于类或接口实现接口public class A interface B(){} extends 继承 用于类继承类 public class A extends D(){} 五,其他相关知识 synchronized 线程锁 关键字可以应用于方法或语句块,保证代码一次只能被单个线程执行。 throw 抛出一个异常对象 String a; if(a == null), throw new exception("a为null"); throws只用在一个方法的末端,方法内部产生异常抛给它的调用者 public void add(int a, int b) throws Exception(); 六,注意事项 A,变量要么是引用 ,要么是基础类型,==比较的是引用,不是内容,Java通过传值进行引用传递 比较数字用euqals,不能用==c B,null.get()或者null.set()都是空指针 解决方法:每次拿到一个变量值,都判空:非空一个逻辑;空一个逻辑即可 C,循环的插入例如list.add(a);a必须在循环内部new D,String.split()方法参数需要转译 String[] arr = amtStr.split("\\."); String[] arr = amtStr.split("\\|"); E,创建目录时尽量用创建多级目录的new File().mkdirs(),不要用new File().mkdir(),避免报错 F,标准的关闭流写法 G,金额字段,格式转换时要慎重Double转String,直接用toString是科学计数法,超过7位的都是用科学计数法显示字符串的。 超过7位用科学计数法所以导致20100000.00分转化成String为2.01E7。解决方法:使用功能强大的BigDecimal类