Collection集合类的子类ArrayList和Linked

2019-10-27  本文已影响0人  田野上的风

继承Thread

实现Runnable

两种工具辅助创建线程,

Callable/线程池

基本类型:

This ,

Private 私有,便于维护修改

线程:

    创建

        -继承Thread

        -实现Runnable()

    方法

        Thread.currectThread()

        Thread.sleep()

        Thread.yield()

        Get.Name()

        setDaemon(true)

        setPriority

    同步

        Synchronized(对象){//抢对象锁

}

        Synchronized

    工具

        -线程池ExecutorService/Executors

            Executors.newFixedThreadPool()

            pool.execute(Runnable任务)

        -Callable/Future

            future = pool.submit(Runnable

任务)

            Future.get()

            Future =pool.submit(Callable任务)

    Volatile

        -可见性

        -禁用代码重排

        -不能包装原子操作

线程锁

    Sychronized

    Lock

ReentrantLock

        ReentrantReadWriteLock

            ReadLock

            WriteLock

        方法:

            Lock()加锁

            Unlock()解锁

内部类

    非静态内部类。

    Class A{

        Class Inner{

}

}

A a = new A();

Inner i = a.new Inner();

作用:* 辅助一个复杂对象,对局部的数据或运算逻辑进行封装

静态内部类

Class A{

        static class Inner{

}

}

Inner i = new Inner();

*静态内部类与普通的类的作用

*根据个人设计偏好,可以选择使用静态内部类

    *关系紧密的类可以选择嵌套定义

局部内部类

class A{

void f(){

    class  Inner implement Weapon{

}

Inner i = new Inner();

return i;//返回对象的地址值

}

}

匿名内部类

注释:

单行注释:选中,然后Ctrl + /

多行注释:选中,然后Ctrl + shirt + /

class A {

    void f(){

}

}

今天学的是一些数据结构,一些存放数据的容器,各有各的特点。list有序集合。

Collection是一个集合接口,Collecetions是一个包装类

为什么出现集合类

        面向对象对事物的体现都是以对象的形式,所以为了方便对多个对象的操作,就对对象进行存储

        集合就是存储对象最常用的一种方法。

数组和集合类同是容器,有何不同?

        数组虽然也可以存储对象,但长度是固定的,集合长度是可变的,数组中可以存储基本数据类型,集合只能存储对象。

集合(collection)框架

集合类的特点

        集合只用于存储对象,集合长度是可变的,集合可以存储不同类型的对象

集合框架

Collection的方法:

添加方法

Add(E e) 1.5以后涉及泛型  这个e就是object

参数是object,以便于接受任意类型的对象

Size() 集合中存储的个数

Remove()删除

注意:集合中存储的都是对象的引用(地址)

Collection(集合),有三个,集合子类中又有有序集合和无序集合,以及一个队列。

    list

            ArrayList底层是数组结构,特点:查询速度很快,增删慢,线程不同步。

            LinkedList 底层使用的链表数据结构。特点:增删速度快,查询稍慢。

            Vector 底层是数组数据结构 功能和ArrayList 一样被ArrayList线程同步。

    set 元素是无序的,元素不可重复。

迭代器:Iterator的子接口ListIterator是集合特有的迭代器,列表迭代器。

    Queue队列。

上一篇下一篇

猜你喜欢

热点阅读