`
DaiChengwo
  • 浏览: 2109 次
  • 性别: Icon_minigender_1
  • 来自: 湖南长沙
社区版块
存档分类

JAVA知识------接口,异常,集合

阅读更多

1.接口

(1).子类继承父类是单继承,而接口是JAVA继承体下的多继承,一个类可以继承多个接口

 

(2).使用interface创建接口,在子类使用implements继承父接口

 

(3).接口下的方法都是默认的abstract抽象方法

 

(4).接口和抽象类的区别在于:抽象类利于代码复用,接口利于代码维护

 

(5).接口特性:

        <1>.接口不可以被实例化

        <2>.实现类必须实现接口的所有方法

        <3>.实现类可以实现多个接口

        <4>.接口中的变量都是静态常量

 

(8).接口:

public interface UsbInterface {

public void service ();(默认是abstract方法)

}

子类:

public class UDisk implements UsbInterface {

    public void service() {}(必须重写接口所有方法)

 

 

2.异常

Java处理异常的5个关键字:try ,  catch, finally  ,  throw 和throws

          {

          try (执行可能会出现异常的代码)

          catch(捕捉异常)         

          finally(不管是否出现异常,都一定执行的代码)

          throw(手动要抛出的异常)

          throws(声明可能要抛出的各种异常,让调用者去处理异常)

}

 

Finally唯一不执行的情况是:在Finally前加System.exit(1)这句代码,就不执行Finally;(0代表异常退出,1代表强制退出);

 

 

catch异常类型:

异 常 类 型

说    明

Exception

异常层次结构的父类

 

ArithmeticException

 

算术错误情形,如以零作除数

 

ArrayIndexOutOfBoundsException

数组下标越界

 

NullPointerException

 

尝试访问 null 对象成员

 

ClassNotFoundException

 

不能加载所需的类

 

IllegalArgumentException

 

方法接收到非法参数

 

ClassCastException

 

对象强制类型转换出错

 

NumberFormatException

 

数字格式转换异常,如把"abc"转换成数字

 

多重异常处理:

try {

     // 代码段

     // 产生异常(异常类型2)

} catch (异常类型1 ex) {

     // 对异常进行处理的代码段

} catch (异常类型2 ex) {

     // 对异常进行处理的代码段

} catch (异常类型3 ex) {

     // 对异常进行处理的代码段

}

 

注:(Exception异常处理类型只能放在最后一个catch异常处理中,不能放在其他异常类型之上)

 

 

 

 

3.集合

(1).Conllection,List,Set,Map接口的联系与区别

<1>Collection是一个较高的抽象,List,Set和Map都是Collection的子接口

<2>List的特征:允许重复元素,储存顺序与插入元素顺序一致(包含ArrayList,LinkedList集合)

<3>set的特征:不允许重复元素,不保证元素储存顺序(包含HashSet,TreeSet集合)

<4>Map的特征:储存元素是一系列key(键),Value(值)(包含HashMap,TreeMap集合)

 

(2).ArrayList和LinkedList的区别

ArrayList 遍历效率高,添加.删除效率低

LinkedList 添加.删除效率高,遍历效率低

 

(3).List常用的方法

方法名

说    明

boolean add(Object o)

在列表的末尾顺序添加元素,

起始索引位置从0开始

void add(int index,Object o)

在指定的索引位置添加元素。

索引位置必须介于0和列表中元素个数之间

int size()

返回列表中的元素个数

Object get(int index)

返回指定索引位置处的元素。取出的元素是Object类型,使用前需要进行强制类型转换

boolean contains(Object o)

判断列表中是否存在指定元素

boolean remove(Object o)

从列表中删除元素

Object  remove(int index)

从列表中删除指定位置元素,

起始索引位置从0开始

 

(4).LinkedList特用的方法

方法名

说    明

void  addFirst(Object o)

在列表的首部添加元素

void  addLast(Object o)

在列表的末尾添加元素

Object  getFirst()

返回列表中的第一个元素

Object  getLast()

返回列表中的最后一个元素

Object  removeFirst()

删除并返回列表中的第一个元素

Object  removeLast()

删除并返回列表中的最后一个元素

 

(5).Map常用的方法

方法名

说    明

Object put(Object key, Object val)

以“键-值对”的方式进行存储

Object get (Object key)

根据键返回相关联的值,如果不存在指定的键,返回null

Object remove (Object key)

删除由指定的键映射的“键-值对”

int size()

返回元素个数

Set keySet ()

返回键的集合

Collection values ()

返回值的集合

boolean  containsKey (Object key)

如果存在由指定的键映射的“键-值对”,返回true

 

(6).遍历Map集合

<1>.通过迭代器Iterator实现遍历

              [1].获取Iterator:Collection 接口的iterate()方法

              [2].Iterator的方法

                    booleanhasNext(): 判断是否存在另一个可访问的元素

                    Object next(): 返回要访问的下一个元素

Set keys=dogMap.keySet();    //取出所有key的集合
Iterator it=keys.iterator();       //获取Iterator对象
while(it.hasNext()){
  String key=(String)it.next();      //取出key
  Dog dog=(Dog)dogMap.get(key);    //根据key取出对应的值
  System.out.println(key+"\t"+dog.getStrain());
}
<2>.增强型for循环遍历Map集合 
 Set keys = list.keySet();

 for(Object key:keys){
		 Penguin dog=(Penguin)list.get(key);  //根据key取出对应的值
		 System.out.println(key+"\t"+dog.getSex());	
			}

 

(6).泛型

<1>类型安全,泛型的主要目标就是提高java程序的类型安全

<2>消除强制转换,这样使得代码更加可读,减少出错的机会

<3>具有潜在的性能收益,泛型为较大的优化带本可能

分享到:
评论

相关推荐

    Java-Interview-超全集合github上评分最高的jiva面试题

    "Java-Interview-超全集合github上评分最高的jiva面试题"就是一个这样的宝藏,它涵盖了Java编程语言、Git版本控制工具以及面试策略等多个方面的知识点。以下是这些内容的详细解析: 1. **Java基础** - **数据类型...

    java--基础程序知识.rar

    这份“java--基础程序知识.rar”压缩包显然包含了关于Java基础知识的学习资料,旨在帮助初学者或有经验的开发者巩固和深化Java编程技能。下面将详细讨论Java的基础知识,包括其语法、核心概念以及常见应用。 1. **...

    2JAVA编程高级-集合类.pdf

    以上是对Java编程中集合类的相关知识点进行了详细的介绍,包括了集合类的概念、分类、常用接口及其实现类、异常处理以及泛型的使用等重要内容。掌握这些知识点对于深入理解和使用Java集合框架至关重要。

    java基础-中级-高级-深入·

    - **集合概述**:Java集合框架是一组用于存储和操作对象的接口和类。 - **List与Set**:List是有序集合,允许重复元素;Set不允许重复元素。 - **Map**:键值对的集合,每个键都是唯一的。 ### Java高级 #### 1. ...

    java1-7

    Java是世界上最流行的编程语言...每个.mp3文件可能代表了一堂课程或讲解的主题,通过这样的序列,学习者可以逐步构建完整的Java知识体系。理解并掌握这些知识点,将使开发者能够编写出高效、稳定且易于维护的Java程序。

    java课件--耿秋义

    4. **Java第06章 - 异常处理**:异常处理是Java编程中不可或缺的一部分,通过try-catch-finally语句块,学习者可以学会如何处理运行时可能出现的问题,提高程序的健壮性。 5. **Java第08章 - 输入输出流**:这一章...

    java44-46

    总之,"java44-46"这个主题涵盖了从基础到进阶的Java编程知识,包括面向对象的基本概念、异常处理和集合框架的使用。通过系统学习,开发者可以建立起坚实的基础,为后续的Java开发工作打下牢固的根基。

    java基础教程----精华版

    这个"java基础教程----精华版"显然是一份精心整理的资料,旨在帮助初学者快速掌握Java编程的基础知识。下面将详细介绍Java语言的核心概念和关键知识点。 1. **Java语法基础**: - **变量**:在Java中,变量是存储...

    CoreJava串讲---超好!

    - **JAVA串讲8-13.doc**:这部分可能涵盖了类、对象、继承、多态等面向对象编程的核心概念,以及异常处理和集合框架的基础知识。 - **JAVA串讲14-18.doc**:此部分可能涉及了Java的IO流和文件操作,以及线程和并发...

    corejava--基础教程

    以上只是《CoreJava--基础教程》中的部分关键知识点,实际教程会涵盖更多细节,如异常的自定义、集合框架的高级特性和文件I/O的复杂操作等。通过深入学习这些内容,开发者可以构建坚实的基础,进一步探索Java的高级...

    java习题-多选题

    在"java习题-多选题"这个主题中,我们可以深入探讨Java的基础概念、语法特性、多线程、异常处理、集合框架、IO流、网络编程等多个核心知识点。 1. **基础概念与语法**: - 类与对象:Java的核心是面向对象编程,...

    java31-35

    以下是对这些阶段可能涉及的Java知识点的详细阐述: 1. **异常处理(Exception Handling)** - 在Java 31中,我们可能会深入学习Java的异常处理机制,包括try-catch-finally语句块、throw和throws关键字,以及...

    java 1-11章学习课件

    这份"java 1-11章学习课件"提供了全面的Java基础知识,适合初学者和想要巩固基础的开发者。以下是对每个章节可能涉及的主要知识点的详细概述: 1. **第一章:Java简介** - Java的历史和发展 - Java的特点:平台...

    JAVA核心知识-面试用

    以下是一些Java核心知识的详细阐述,这些知识点对于任何Java开发者,尤其是面试者来说,都是至关重要的。 1. **Java基础** - **数据类型**:Java有两大类数据类型:基本类型(如int、char)和引用类型(如类、接口...

    02-Java集合容器面试题(2020最新版)-重点.pdf

    ### Java集合容器知识点详解 #### 一、集合容器概述 - **定义**:集合容器是Java平台提供的标准组件,主要用于存储对象。集合框架提供了一套统一的接口和实现,使得开发者能够灵活地处理不同类型的数据集合。 ####...

    java36-40

    接下来,我们将深入探讨这些阶段可能涵盖的Java知识点。 首先,Java 36可能涉及的是基础语法和数据类型。在Java编程的早期阶段,学习者通常会接触到变量、常量、运算符、控制流程(如if语句、for循环和while循环)...

    java面试java-interview-guide-master.zip

    以下将从Java语言基础、核心特性、集合框架、多线程、网络编程、异常处理、JVM内存管理、数据库交互、设计模式以及面试策略等多个方面,详细阐述这些知识点。 1. **Java语言基础**: - 变量、数据类型:了解基本...

    Java语言-自学手册完全版

    ### Java语言自学手册知识点概述 本手册旨在为Java初学者提供一套全面且系统的自学资源,帮助读者从零开始掌握Java编程的基本概念与实践技巧。Java作为一种广泛应用的编程语言,在软件开发、Web应用、移动应用...

    Java题库-175道选择题

    通过解答这175道选择题,开发者不仅能检验自己的Java知识,还能发现知识盲点,为后续的学习和项目开发打下坚实的基础。不断练习和理解这些知识点,将有助于提升编程技能,成为一名优秀的Java开发者。

Global site tag (gtag.js) - Google Analytics