java进阶学习第一天_Java进阶学习资料

622fefd9-ce48-eb11-8da9-e4434bdf6706.svg

点击蓝字 关注我们

672fefd9-ce48-eb11-8da9-e4434bdf6706.svg

本目录是一个Java进阶干货汇总导航:Java进阶学习路线,Java进阶学习视频,Java进阶练习项目等等。

这是一篇持续更新的文章!

干货目录

6b2fefd9-ce48-eb11-8da9-e4434bdf6706.svg

Java进阶教学目录

(资料链接在文章底部) 

01

622fefd9-ce48-eb11-8da9-e4434bdf6706.svg Java进阶学习路线

Java必备面向对象编程思想

知识

学习程度

学习要求

个人观点

类和对象

熟练

明白类的定义,对象的定义,初始化对象,对象的操作

工作会用(编程基点)

面向对象特性

熟练

面向对象思想

、封装,继承,多态如:类和对象、封装思想、继承和类、多态

工作会用

抽象类

熟练

抽象类和普通类的区别,如:abstract关键字、抽象和实例化理论知识、子类继承父类访问权限

工作会用,面试会考

成员变量

精通

含义和使用,如:对象的属性是成员变量、成员方法get\set

工作会用

局部变量

精通

定义和理解含义,如:形参、方法体内定义、作用域等

工作会用

this关键字

精通

This关键字的含义是什么?如:自己当作参数传递、this指的是含义一定要理解

工作会用

构造方法

精通

明白构造方法的几个创建方式,如:多个构造函数方法、继承类构造方法

工作会用

super关键字

精通

会使用super和明白含义如:访问父类的属性、访问父类的函数、访问父类的构造函数

工作会用

重写

精通

重写的定义和操作使用、重写要注意的事项、重载和重写区别

工作会用

子类

精通

子类继承关系、创建对象时分配内存问题、final关键字

工作会用

父类

精通

类继承关系、构造函数、super关键字、object类

工作会用

接口

精通

接口定义和类的区别、接口和抽象类区别、interface掌握使用、与extends区别、implements 使用 

工作会用

内部类

精通

定义内部类方式、成员内部类、内部类访问权限、局部内部类

工作会用

匿名内部类

精通

匿名内部类定义实操,如:匿名内部类需要的条件

工作会用

包装类

精通

基本类型对应的包装类如:Integer、Short、Byte、Long、Float、Character、Boolean、Double、低级向高级自动转换,高级向低级强制转换)

工作会用

拆箱和装箱

精通

数据类型转换之间转换如:低级向高级自动转换,高级向低级强制转换)、什么时候会引发装箱和拆箱 、Object 

工作会用

泛型

精通

泛型的本质、泛型通配符、泛型类、泛型接口、泛型方法

工作会用

静态(变量和类)

熟练

静态变量跟实例变量、静态变量与类关系、静态方法跟实例方法、静态方法与重写、静态方法问类中的静态成员跟静态方法与访问类中的实例变量跟实例方法区别

工作会用

必备常用操作API

String类

熟练(面试喜欢问)

一定要多练构造函数,工作中经常操作字符串,

charAt、substring、compareTo、equals、concat、indexOf、toUpperCase、replace、split等方法,

面试会考,工作会用

StringBuilder类

熟悉

实操Append、toString、setCharAt、insert、delete等方法

工作会用,面试会问

StringBuffer类

熟悉

了解StringBuffer类内存分配,String与StringBuffer的区别,append、deleteCharAt、insert、reverse、setCharAt、replace、substring等方法

工作会用(偶尔),面试会问

 Math类

精通

Math类的常用方法abs、ceil、random、

工作会用(偶尔)

System类

熟悉

System类及其常用方法2个

工作会用(偶尔)

Object类

精通

Object类的toString()和equals()方法等4个

工作会用

Arrays类

熟练

Arrays类及其常用方法4个

工作会用

日期Date类

精通

日期Date类型及其常用方法和日期格式化3个

工作会用

日历Calendar类

熟悉

日历Calendar类的常用方法2个

工作会用(偶尔)

Java必备集合

Collection

熟练

List集合、Set集合、Map集合。方法:add、clear、remove、removeAll、isEmpty、iterator、hasNext、size、toArray

工作会用、面试会问

 Collections工具类

熟练

方法:reverse、sort、swap、max、copy

面试会考,工作会用

List

精通

底层数据结构,效率问题,实现类:ArrayList、Vector、LinkedList。方法add、get、listIterator、hasPrevious、remove、set、asList

工作会用,面试会考

Set

熟练

底层数据、排序问题、保证元素的唯一性问题、二叉树、HashSet、TreeSet、compareTo方法、

工作会用(偶尔),面试会考

Map

精通

数据结构。实现类HashMap、TreeMap、LinkedHashMap、Hashtable。方法put、get、remove、clear

工作会用,面试会考

 集合算法

熟悉

排序、洗牌、搜索、常规数据操作、构成、找极值

 面试会考

集合数据结构

熟悉

动态数组\哈希表

\链表\红黑树\二叉树

面试会考

必备异常知识

处理异常的方式

熟练

概述, 默认处理异常的方式

工作会用,面试会考

try..catch

熟练

程序为什么会终止、异常的类型、代码执行

工作会用,面试会考

throws

熟练

throws 异常声明

工作会用,面试会考

Throw

熟练

抛出一个异常

工作会用,面试会考

Finally

熟悉

用在try/catch语句中顺序

面试会考

Final

熟练

使用和理论如:修饰类、修饰方法、修饰变量、final和static

工作会用,面试会考

异常的作用

精通

编写出来的程序更加健壮

面试会考

必备常用io流

File类

熟悉

操纵对象和常用方法toString、compareTo、equals、createTempFile、createTempFile、setReadOnly、mkdir、delete、createNewFile、isFile、exists、getPath、getParentFile、getName

工作会用(偶尔),面试问得少

IO流的概述

熟练

Java.io 包几乎包含了所有操作输入、输出需要的类、基本类型、对象、本地化字符集等等。还需要熟悉这些对象(BufferReader\InputStreamReader\FileReader\StirngReader\FilterReader\BufferedWriter/OutputStreamWriter\FileWriter\StringWriter\FilterWriter\Reader\Writer\InptStream\FileInputStream\FilterputStream\OjectInputStream\BuffereInputStream\DataInptStream\OjectOutputStream)

工作会用(偶尔),面试问得少

字节流

熟练

FIleInputStream、FileOutputStream、InputStream、OutputStream

工作会用(偶尔),面试问得少

缓冲流

熟练

BufferedInputStream、BufferedReader、BufferedOutputStream、BufferedWriter

工作会用(偶尔),面试问得少

字符流

熟练

Reader、Writer、FileReader、FileWriter

工作会用(偶尔),面试问得少)

输入输出流

熟练

 Reader、InputStream、Writer、OutputStream

工作会用(偶尔),面试问得少

转换流

熟练

InputStreamReader、outputStreamWriter

工作会用(偶尔),面试问得少

打印流

熟悉

printStream、printWriter

工作会用(偶尔),面试问得少

对象流

熟悉

ObjectprintStream、ObjectprintWriter

工作会用(偶尔),面试问得少

管道流

熟悉

PipedInputStream、PipedOutputStream

工作会用(偶尔),面试问得少

对象序列化

精通

什么是序列化与反序列化?怎么进行序列化?OjectInputStream\OjectOutputStream

工作会用,面试问

反射

反射的理论

 反射是一种强大的工具\反射机制\类的加载、连接、初始化\反射的源头 Class\ 泛型和Class类

熟悉

面试会问(偶尔),学习框架会用

类的加载过程

类的加载、连接、初始化

熟悉

面试会问(偶尔)

类加载器

加载器 ClassLoader

熟悉

工作会用(偶尔)

反射知识

Reflection。反射获取的各种方法和属性如下:getConstructor(Class[] params) 、getConstructors() 、getDeclaredConstructor(Class[] params) 、getDeclaredConstructors() 、getField(String name)、 getDeclaredField(String name)、getFields()、getDeclaredFields()、 getMethods() 、getMethod(String name, Class[] params)、getDeclaredMethod(String name, Class[] params) 、getDeclaredMethods()。获取Class类的对象、

必备(框架学习要用)

学习会用,工作会用(偶尔)

动态代理

Proxy 和  InvocationHandler

学习会用

获取 Class 实例的四种方式

《Person.class;》《Person p = new  Person();
 Class clazz3 = p.getClass();》《Class.forName(className);》《ClassLoader classLoader = this.getClass().getClassLoader();
 Class clazz5 = classLoader.loadClass(className);》

熟悉

学习会用,工作会用(偶尔)

注解

理论知识

Annotation语法、定义、应用、属性、元注解、注解与反射

熟悉

工作会用

自定义注解

熟练

学会自己写一个注解出来

工作会用(偶尔)

实操

亲手自定义注解

实操

工作会用

元注解

@Repeatable、@Inherited 、@Target、@Documented、@Retention

熟悉

工作会用

预置的注解

@Override

、@SafeVarargs、@Deprecated

、@SuppressWarnings

、@FunctionalInterface

熟练

工作会用

JUC必备多线程

进程和线程的理论

是并发编程中很常用的工具类,线程池,异步 IO 和轻量级任务框架都有涉足\原子性

\线程按序交替\线程八锁\调度\线程的安全问题\ 线程的生命周期\线程优先级

理解

面试会问

实现多线程

实现多线程四种方式1、继承Thread类\2、实现Runnable接口\3、实现Callable接口\4、使用ExecutorService、Callable、Future实现

熟练

面试必问

 同步代码块

synchronized实操和理论

熟练

工作会用、面试会问

Lock 同步锁

和synchronized区别、ReentrantLock.lock(),ReentrantLock.tryLock(),

ReentrantLock.tryLock(long timeout,TimeUnit unit),

熟练

面试会问\工作会用

volatile 关键字

内存模型中的可见性、原子性和有序性\Volatile原理

理解

面试会问

CAS算法、原子变量

 CAS算法incrementAndGet、compareAndSet、compareAndSwapInt、Atomic.cmpxchg、compareAndSwapInt.native||原子变量AtomicInteger\AtomicReference\FieldUpdater\ABA问题与解决

理解

面试会问

ConcurrentHashMap 锁

线程安全与不安全、数据结构、锁分段

熟练

面试会问

CountDownLatch

工具类的主要犯法CountDownLatch(int count)、countDown()、await()、getCount()

、await(long timeout, TimeUnit unit)

熟练

面试会问

Callable

Callable接口的实现实操

熟练

面试必问

ReadWriteLock 读写锁

熟练

熟练

面试必问

线程池

newCachedThreadPool、newFixedThreadPool、newSingleThreadExecutor

熟练

面试必问

线程八锁

1. 两个普通同步方法,两个线程,标准打印, 打印?\2. 新增 Thread.sleep() 给 getOne() ,打印?\3. 新增普通方法 getThree() , 打印?\4. 两个普通同步方法,两个 Number 对象,打印?\5. 修改 getOne() 为静态同步方法,打印?\6. 修改两个方法均为静态同步方法,一个 Number 对象?\7. 一个静态同步方法,一个非静态同步方法,两个 Number 对象?\8. 两个静态同步方法,两个 Number 对象?

熟练

面试必问

02

622fefd9-ce48-eb11-8da9-e4434bdf6706.svg Java进阶学习视频

44aa066e59db90ffe356a5ecff351cc2.png

0709a698a6e3a03a3bb60babb6cf3157.png

这个视频里面有基础也有进阶(后台回复java进阶,可直接获取资料)

03

622fefd9-ce48-eb11-8da9-e4434bdf6706.svg

Java进阶练习项目

44aa066e59db90ffe356a5ecff351cc2.png

464ba2bc72a54e1da160ba10a0364eaa.png

这里推荐上面视频的配套资料

(后台回复java进阶,可直接获取资料)

04

622fefd9-ce48-eb11-8da9-e4434bdf6706.svg

更新中>>>>>

持续更新中,欢迎大家提出宝贵意见!

扫码关注我们

6b2fefd9-ce48-eb11-8da9-e4434bdf6706.svg 9ff5de4fa1465e168d5b73c1e72c1a99.png

云欧Java先生

微信号|za_zuoxiansheng

定制微信|WZL997700

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值