项目组6第二周总结(20200224-20200228)

0,项目组6第二周总结(20200224-20200228)

-- 1,1 泛型
-- 1,2 枚举
-- 1,3 注解
-- 1,4 线程

1,1 泛型

-- 泛型定义
    >> 从字面上理解就是泛指任意类型,类型作为参数使用。
    >> 从本质上讲就是限制使用,只能使用特定类型。
-- 泛型特点
    >> 只编译有效
-- 常用泛型接口
    >> List Set Map 
    >> Callable
-- 常用泛型类
    >> Class
-- 泛型统配符号
    >> ?
        * 无界
        * 一切泛型的抽象类
            * 可以是任意类型
        
    >> ? extends  
        * 有界
            * 上限
        * 只能是当前类和子类
    >> ? super
        * 有界
            * 下限
        * 只能当前类和父类
-- 泛型类和泛型方法
    >> 泛型类
        * 编写泛型类
    >> 泛型方法
        * 泛型方法编写
-- 泛型接口
    >> 掌握Dao声明为泛型接口
-- 案例应用
    >> 使用泛型方式进行修改项目

1,2 枚举

-- 枚举定义
    >> 枚举是特殊类型,可以用举例的方式将当前问题描述清楚。
        * 例如:电视有四种种状态
            * 开机    
            * 运行
            * 暂停
            * 关机
-- 枚举特点
    >> 有限性
        * 能够描述清楚个数
    >> 虚拟机加载后会将有限对象进行创建。
        * 对外无法进行创建
    >> 有构造函数
        * 存在默认构造函数
        * 可以重写构造函数
        * 构造函数私有化
-- 枚举类型编写
    >> 修饰符
        * enum 
            * enum和class一个级别,都是java中的类型
-- 枚举案列应用
    >> 第二周考试题第五题

1,3 注解

-- 注解定义
    >> 注释解释给java虚拟机阅读的标签。
    >> 注解就是一个接口。
        * 如何证明
    >> 注解的符号
        * @ 
-- 预定义预定义
    >> @Override
    >> @Deprecated
    >> @SuppressWarnings
-- 元注解
    >> @Documented
        * 生成javaDoc
    >> @Retention
        * 注解在什么情况下生效
            * RetentionPolicy 
                * SOURCE
                * CLASS
                * RUNTIME
    >> @Target
        * 注解的范围
            * 类
            * 方法
            * 域(属性)
        * ElementType
            * TYPE
            * METHOD
            * FILED
-- 自定义注解
    >> 声明属性
        > 属性返回类型
            * 基本数据类型
            * String
            * 枚举
            * 注解
            * 以上4中数组 
    >> 给属性进行赋值
        > 特殊属性value
            * 如果属性为value,初始化可以不用加属性名称
        > 属性为数组
            * 使用大括号方式进行赋值
            * {}
            * 如果数组为value符合前一条
    >> 获取注解属性值
        > java反射机制进行获取
-- 注解案例
    >> 测试题目第四题

1,4 线程

-- 线程定义
    >> 程序一个分支
    >> 操作系统调用的最小单位
-- 线程实现方式
    >> 继承Thread
    >> 实现Runnable
    >> 实现Callable
-- 线程状态
    >> 新建
        * new
    >> 就绪
        * start()
    >> 运行
        * run()
    >> 阻塞
        * 让出cpu资源
        * Thread.sleep()
    >> 死亡
        * 线程最后一行代码执行完毕
-- 锁
    >> synchronized关键字
        > 修饰方法
            * 锁定当前对象
        > 修饰代码块 
    >> 死锁
        > 死锁如何产生的
-- 线程案例
    >> 多线程模拟秒杀
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第一阶段java基础复习 1.软件开发基础 1.1开发软件的目的 提高人个计算机之间的交互方式 1.2软件 软件=...
    allencaicai阅读 508评论 0 0
  • 一、深复制和浅复制的区别? 1、浅复制:只是复制了指向对象的指针,即两个指针指向同一块内存单元!而不复制指向对象的...
    iOS_Alex阅读 1,472评论 1 27
  • 本系列出于AWeiLoveAndroid的分享,在此感谢,再结合自身经验查漏补缺,完善答案。以成系统。 Java基...
    济公大将阅读 1,551评论 1 6
  • 新编的二年级语文下册,第三单元是以“中国传统文化”为主题的识字教学。《“贝”的故事》目的是让学生了解祖国文字的演变...
    一米阳光_861f阅读 3,107评论 0 2
  • 3月3日,0时50分,用这种方式,打开自己这本简书的大门。 决定,只用了5秒;思考,却用了半生。 其实,我并不知道...
    古灵兰阅读 361评论 0 1