基础
一、Java的数据类型
八大基本数据类型
整数:byte、short、int、long
字符型:char
布尔型:Boolean
基本类型的包装类:
包装类主要提供了两大类方法:
1. 将本类型和其他基本类型进行转换的方法
2. 将字符串和本类型及包装类互相转换的方法
byte=>Byte
short=>Short
int=>Integer
long=>Long
float=>Float
double=>Double
char=>Character
boolean=>Boolean
Integer.toString(int)//数值转字符串
Integer.parseInt(str)//字符串转数值
三大引用数据类型
类、接口、数组
1.数组
数组的定义:
int[] arr = new int[5];
int[] arr = new int[]{1,2,3,4,5};
int[] arr = {1,2,3,4,5};
for(int a:arr){
sout(a);
}
Arrays类操作数组:
Arrays..sort(arr);
Arrays.toString(arr);
2.类 ctrl+h
1. 包:package
2. 访问修饰符:
public :公共的,任何地方都可以访问
protected:保护的,同一个包的类、继承的子类可以访问
default :默认的,同一个包的类可以访问
private:私有的,只能在类内部访问
3. 封装
- 利用对象和方法 来 隐藏实现细节
- 属性私有,get/set
4. 继承
- 单继承
- object
- super
- 方法重写
5. 多态,基于继承
- 实现多态的关键是接口。
- 实现类重写 接口的类。@Override
- 通过参数动态产生接口的不同实现类,执行接口的方法,得到不同的现象。不需要了解具体的哪些实现类。
6. ArrayList 替代数组,每个Java项目必用的类
//不强制类型相同
List list = new ArrayList();//前面List是接口类型,后面ArrayList是实现类。 java.util.List/ArrayList
list.Add("xxx");//列表的尾部追加
list.add(0,"xxx");//从列表头部追加,其他成员后移
list.get(index);取出。
list.remove(index);删除。
list.size();//个数
=>强制指定类型的方法:泛型
List<String> list = new ArrayList<String>();
7. 重写和重载
-
重写:子类重写父类方法(可以家@Override),实现类重写接口方法(需要@Override)。
-
重载:同一个方法的不同参数实现体,调用相同方法,传入参数不同进入不同的实现。
8. 字符串
-
常用方法
length indexOf2 lastIndexOf2 subString2 trim equals toLowerCase toUpperCase charAt split getBytes ==: 判断两个字符串在内存中首地址是否相同,即判断是否是同一个字符串对象 equals(): 比较存储在两个字符串对象中的内容是否一致
-
StringBuilder 类
StringBuffer 是线程安全的,而 StringBuilder 则没有实现线程安全功能,所以性能略高。
因此一般情况下,如果需要创建一个内容可变的字符串对象,应优先考虑使用 StringBuilder 类。
append insert toString length
-
其他
9. 使用 Date 和 SimpleDateFormat 类表示时间
Date类存在各种问题。更推荐使用 Calendar 类进行时间和日期的处理。
10. 使用 Math 类操作数据
3. 集合框架
泛型:规定了某个集合只可以存放特定类型的对象。
Collection接口
Collections工具类:java.util.Collections。操作集合框架的工具类。如 sort方法
Map接口
Comparable接口
Comparetor接口
Collection接口
-
List接口 常用
- 实现类:ArrayList数组序列、LinkedList 链表
-
Queue接口 队列
- 实现类:LinkedList 链表
-
Set接口 常用
- HashSet 哈希集
-
实现Comparable接口的compareTo,表示该类是可比较的。才能进行sort
-
Comparetor接口.Compare方法
Map接口 <key,value>
实现类 :HashMap
键值对 Entry
4. Throwable
### 1.Error 错误是无法预料的
虚拟机错误
GUI错误
2.Exception 异常是可以预料的
IO异常:EOF FileNotFind
Runtime异常
主动抛出异常是throw,在方法上是shrows