JAVAOO 基础巩固

一:抽象类

定义:

抽象类往往用来表征对问题领域进行分析、设计中得出的抽象概念,是对一系列看上去不同,但是本质上相同的具体概念的抽象。
通常在编程语句中用 abstract 修饰的类是抽象类
特征:1, 抽象类不能直接实例化,并且对抽象类使用 new 运算符会导致 编译 时错误
         2,允许(但不要求)抽象类包含抽象成员。
         3,抽象类不能被密封。

二:接口
定义:--是一种数据类型
特征:
1:接口是比抽象类更为抽象的一种表现形式--不是类2::接口创建,只需要将class替换为interface :接口中的方法都是抽象的
        4:接口中的方法可以不用abstract关键字修饰,但是默认为它修饰
运用:
1:抽象类可以让别的类继承,而接口呢?需要其它类实现2:::和继承类似,在类名后书写 implements3: //类可以多实现接口,并且还可以继承时同时多实现
 接口的实现             1:不去实现方法,将该类声明为抽象类 2::重写所有的方法
三 ;异常:
异常常用处理的方法1.避免出错2::.try...catch语句块3 :.抛出异常
try...catch中是对异常进行捕获,在catch中写入异常的类型然后进行匹配,直到匹配成功为止
如果所有catch语句没有抓捕异常对象,则依然会出现JVM的报错
在try...catch之后可以添加finally语句块--表示一定会执行(除了System.exit(0))
Java代码中,如果生成一个异常对象就会出现代码报错吗?--不会,需要使用throw抛出异常对象
java中除了throw还有throws(声明)
四 :正则表达式(正确规则的表达式)
定义:一个规则正则表达式可以是:1.一个给定的值--就必须和给定的值一样 2.一个范围--只要满足范围,即满足正则表达式


正则表达式中如果给定的是范围
则有三种需要注意的符号:[]   {}   +?*
[]表示满足其中一个即可,但是可以有多个[]
11在[]中可以使用-表示连接符,但是必须连接的是连续的内容     22  {}表示前面的[]中的内容可以出现几次  用法2:给定一个范围,表示必须出现该次数      例如    [0-9]{1,3}  表示[0-9]可以出现的次数:最少1次,最多3次   
用法3:可以在用法2的基础上只指定最少次数但不指明最多次数       注意{n,m}中n表示下限次数,m表示上限次数  但m不能比n小
五:集合   

1、定义:什么是集合?--类似于数组又是数据的组合

2、集合和数组的区别:
数组:长度固定、类型固定、内存连续

集合:长度不固定、类型不固定(泛型之前)

3、Collection(集合),其中主要讲解的有其两个子接口:List、Set  和与其没关系的Map
List中:ArrayList/LinkedList
Set中:HashSet/TreeSet
Map中:HashMap/TreeMap

4  类型

由于集合中并没有指明数据类型,所以所有的元素取出来后都是Object对象
为了给该集合中的数据的类型进行区分,我们给集合加上一个指定的数据类型--便于使用
而加上的数据类型称为--泛型--指明集合中的数据类型

4、运用

list.size()//集合的大小
System.out.println(list.size());
ystem.out.println(list.get(list.size()-1));
System.out.println(list.get(1));
删除list.remove(2);
System.out.println(list.size());
list的toString()已经被重写过
System.out.println(list);
list.add(2, "小明");
System.out.println(list);
ArrayList arr2 = new ArrayList();
arr2.add("呵呵");

arr2.add("嘿嘿");
arr2.add("哈哈");
list.addAll(arr2);
System.out.println(list);
                                 list.clear();//清空集合
ArrayList中有一个注意事项
删除remove(Object o)

Integer in = 10;
list.remove(in);

小练习:在集合中存入1-10的数字
//删除2的倍数
ArrayList list1 = new ArrayList();
for(int i = 1;i<=10;i++) {
// list1.add(i);
}
// System.out.println(list1);
// for (int i = 0; i < list1.size(); i++) {
// if((int)list1.get(i)%2==1) {
// list1.remove(i);
// }
//
// }
// System.out.println(list1);

ArrayList list = new ArrayList();
list.add(1);
list.add(2);
list.add(3);
list.add(4);
list.add(1.1f);

for (int i = 0; i < list.size(); i++) {
int in =  (int)list.get(i);
if(in%2==0) {
//操作--集合删除时下标会变化
list.remove(i);
}
}
System.out.println(list);






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值