精华内容
下载资源
问答
  • Java进阶

    2018-09-14 11:32:00
  • 点击蓝字关注我们本目录是一个Java进阶干货汇总导航:Java进阶学习路线,Java进阶学习视频,Java进阶练习项目等等。这是一篇持续更新的文章!贰干货目录Java进阶教学目录(资料链接在文章底部)01Java进阶学习路线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.svgJava进阶学习路线

    Java必备面向对象编程思想

    知识

    学习程度

    学习要求

    个人观点

    类和对象

    熟练

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

    工作会用(编程基点)

    面向对象特性

    熟练

    面向对象思想

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

    工作会用

    抽象类

    熟练

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

    工作会用,面试会考

    成员变量

    精通

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

    工作会用

    局部变量

    精通

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

    工作会用

    this关键字

    精通

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

    工作会用

    构造方法

    精通

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

    工作会用

    super关键字

    精通

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

    工作会用

    重写

    精通

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

    工作会用

    子类

    精通

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

    工作会用

    父类

    精通

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

    工作会用

    接口

    精通

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

    工作会用

    内部类

    精通

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

    工作会用

    匿名内部类

    精通

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

    工作会用

    包装类

    精通

    基本类型对应的包装类如:IntegerShortByteLongFloatCharacterBooleanDouble、低级向高级自动转换,高级向低级强制转换)

    工作会用

    拆箱和装箱

    精通

    数据类型转换之间转换如:低级向高级自动转换,高级向低级强制转换)、什么时候会引发装箱和拆箱 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

    熟练

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

    工作会用,面试会考

    异常的作用

    精通

    编写出来的程序更加健壮

    面试会考

    必备常用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)

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

    字节流

    熟练

    FIleInputStreamFileOutputStreamInputStreamOutputStream

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

    缓冲流

    熟练

    BufferedInputStreamBufferedReaderBufferedOutputStreamBufferedWriter

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

    字符流

    熟练

    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.svgJava进阶学习视频

    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.svg9ff5de4fa1465e168d5b73c1e72c1a99.png

    云欧Java先生

    微信号|za_zuoxiansheng

    定制微信|WZL997700

    展开全文
  • java进阶

    2018-11-10 16:10:32
    初级java程序员的进阶之路 今天挖个坑,用两年的时间来填,写博客来监督自己。 1、javaSE:看书总结博客:《Java编程思想》、《Java核心技术:卷I基础知识》、《Java数据结构和算法》、《大话设计模式》、《Java并发...

    初级java程序员的进阶之路

    今天挖个坑,用两年的时间来填,写博客来监督自己。
    1、javaSE:看书总结博客:《Java编程思想》、《Java核心技术:卷I基础知识》、《Java数据结构和算法》、《大话设计模式》、《Java并发编程实战》、《Effective Java》、《深入理解 Java 虚拟机 第2版》。
    2、javaEE:、《Spring实战(第4版)》、《精通Spring 4.x ――企业应用开发实战》、《Redis实战》、《Maven实战》、ssh、ssm。
    3、《jQuery基础教程》、《JavaScript权威指南》

    展开全文
  • Java进阶资料

    2021-01-14 23:58:57
    Java进阶资料
  • Java进阶(五十三)JAVA 注解机制

    万次阅读 多人点赞 2017-02-28 19:30:12
    Java进阶(五十三)JAVA 注解机制  不知道大家在平时用到注解的频率多不多,注解对我们的帮助很大,能为我们节省很多工作。最直接的就是可以代替配置文件的功能,无论是基本的servlet还是常用的三大框架,里面都使用...

    不知道大家在平时用到注解的频率多不多,注解对我们的帮助很大,能为我们节省很多工作。最直接的就是可以代替配置文件的功能,无论是基本的servlet还是常用的三大框架,里面都使用了注解,并且逐渐的代替了原本繁琐的配置,大大提高了编码效率。

    随着注解使用的越来越频繁,我们对底层实现的了解越来越少,所以在这一章我们来好好了解一下注解是怎么实现的。

    首先注解是什么?通俗的意思是为程序的元素(类、方法、成员变量)加上更直观更明了的说明(比如 @Override),这些说明信息是与程序的业务逻辑无关,并且是供指定的工具或框架使用的。

    他的基本原理和流程就是:通过调用Java的反射机制相关API来访问annotation信息。首先加载使用注解的类,得到class类。然后再得到类相应的方法,成员变量。得到变量后调用相应的类、方法、成员变量的对象的isAnnotationPresent方法判断是否使用了注解。之后通过调用相应的类、方法、成员变量的的getAnnotation方法得到相应的注解的对象。接下来我们就可以操作注解对象完成相应的逻辑。

    我们来熟悉一下注解的基本结构:
    这里写图片描述
    最上面的一部分注解叫做元注解,就是注解的注解。@Target 指的是这个注解可以用在什么地方。他的参数可以有如下:
    这里写图片描述
    接着就是@Retention了,它指的是这个注解的生命周期。他的参数可以包括SOURCE、CLAS和 RUNTIME。

    • SOURCE:如果Retention成员取值为SOURCE,表明该注解只存在源代码当中,在编译的时候会被编译器丢掉。如重写方法时,方法上面会有@Override注解,这个注解就是source类型的。
    • CLASS:表示注解会被存到字节码文件.class中,但是虚拟机载入class文件的时候不会将注解导入,因此运行时无法得到。如果不在注解中使用Retention指定,则默认的保留策略为CLASS。
    • RUNTIME:不仅保存到class文件,还会被虚拟机载入内存,因此在运行的时候可以通过反射得到并且使用这些注解。我们待会的例子就是以RUNTIME为例。
    • 而 @Inherited和@Documented表达的意思比较简单:@Inherited
      表示子类可以继承父类的注解(有空会细讲);@Documented 表示生成doc文档的时候会包含这个注解。
    • “public @interface Anno”则是定义注解的关键字以及名字。接下来就是一些成员变量了,注意:这里是变量,不要以为有个括号就是方法了。使用方式是这样的@Anno(name=“wizard”,age=12) 。

    注意:成员变量只能是基本类型、String、class、enum、Annotation和以上类型的数组,而且必须是无参数、不能抛出异常。

    展开全文
  • Java进阶(五十五)-Java Lambda表达式入门

    万次阅读 多人点赞 2017-03-18 09:09:49
    Java进阶(五十五)-Java Lambda表达式入门  原文链接: Start Using Java Lambda Expressions   下载示例程序 Examples.zip 。 简介  (译者注:虽然看着很先进,其实Lambda表达式的本质只是一个”语法糖”,由...
  • packagemooc_java进阶_d3周题;/*** 没有使用HashMap*/importjava.util.ArrayList;importjava.util.Scanner;public classMain {public static voidmain(String[] args) {Scanner in= newScanner(System.in);String ...
  • Java进阶路线

    2017-02-15 22:29:28
    java进阶路线,java程序员如何持续提高自己!
  • Java进阶(三十七)java 自动装箱与拆箱

    万次阅读 2016-07-23 17:21:42
    Java进阶(三十七)java 自动装箱与拆箱前言 这个是jdk1.5以后才引入的新的内容。java语言规范中说道:在许多情况下包装与解包装是由编译器自行完成的(在这种情况下包装称为装箱,解包装称为拆箱); 其实按照我自己...
  • Java进阶(三十六)深入理解Java的接口和抽象类

    万次阅读 多人点赞 2016-07-23 15:14:07
    Java进阶(三十六)深入理解Java的接口和抽象类前言 对于面向对象编程来说,抽象是它的一大特征之一。在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类。这两者有太多相似的地方,又有太多不同的地方。很多人...
  • Java进阶(五十四)初识JAVA类加载机制

    万次阅读 2017-02-28 19:36:05
    Java进阶(五十四)初识JAVA类加载机制  什么是类加载呢?当我们写完一个Java类的时候,并不是直接就可以运行的,它还要编译成.class文件,再由虚拟机解释给当前的操作系统去执行。这些过程都是我们看不见的,我们能...
  • Java进阶(二十五)Java连接mysql数据库(底层实现) 前言 很长时间没有系统的使用java做项目了。现在需要使用java完成一个实验,其中涉及到java连接数据库。让自己来写,记忆中已无从搜索。特将之前使用的方法做一简单...
  • 文章目录Java语言进阶技术要点Java进阶自学--面向对象进阶Java进阶自学--常用APIJava进阶自学--异常Java进阶自学--集合Java进阶自学--IOJava进阶自学--多线程Java进阶自学--网络编程Java进阶自学--LambdaJava进阶...
  • 内容包括(Java基础,Java进阶,Java数据结构,十大算法),其中Java01 : 基础。Java02: 进阶。Java03 : 数据结构。Java04:算法。
  • Java进阶的必经之路! 【超实用课程内容】 本课程囊括了Java语言进阶的核心知识点,以真实场景项目实战为导向,循序渐进,深入浅出的了解Java并发编程、JVM虚拟机、网络编程和MySQL应用,讲解...
  • Java进阶(四十七)Socket通信

    万次阅读 2016-10-15 15:39:32
    Java进阶(四十七)Socket通信  今天讲解一个 Hello Word 级别的 Java Socket 通信的例子。具体通讯过程如下: 先启动Server端,进入一个死循环以便一直监听某端口是否有连接请求。然后运行Client端,客户端发出...
  • Java进阶(三十八)快速排序

    万次阅读 2016-07-28 21:41:35
    Java进阶(三十八)快速排序前言 有没有既不浪费空间又可以快一点的排序算法呢?那就是“快速排序”啦!光听这个名字是不是就觉得很高端呢。 假设我们现在对“6 1 2 7 9 3 4 5 10 8”这个10个数进行排序。首先在这个...
  • Java进阶训练营

    2021-01-11 21:46:05
    ——/Java进阶训练营/├──第二周| ├──Java进阶训练营-1.JVM 核心技术(三):调优分析与面试经验 1.mp4 415.38M| ├──Java进阶训练营-1.JVM 核心技术(三):调优分析与面试经验 2.mp4 188.96M| ├──Java...
  • Java进阶(四十)Java类、变量、方法修饰符讲解

    万次阅读 多人点赞 2016-08-30 10:00:51
    Java进阶(四十)Java类、变量、方法修饰符讲解Java类修饰符 abstract: 将一个类声明为抽象类,没有实现的方法,需要子类提供方法实现。 final: 将一个类生命为最终(即非继承类),表示他不能被其他类继承。 private:...
  • Java进阶(三十二) HttpClient使用详解

    万次阅读 2016-06-24 11:56:51
    Java进阶(三十二)HttpClient使用详解 Http协议的重要性相信不用我多说了,HttpClient相比传统JDK自带的URLConnection,增加了易用性和灵活性(具体区别,日后我们再讨论),它不仅是客户端发送Http请求变得容易,...
  • Java进阶(三十九)Java集合类的排序,查找,替换操作

    万次阅读 多人点赞 2016-08-07 15:55:59
    Java进阶(三十九)Java集合类的排序,查找,替换操作前言 在Java方向校招过程中,经常会遇到将输入转换为数组的情况,而我们通常使用ArrayList来表示动态数组。获取到ArrayList对象后,我们可以根据Collection中的方法...
  • Java进阶的必经之路!  【超实用课程内容】不说假大空的技术术语,实实在在帮助初中级工程师提高Java技术栈开发能力,以真实场景项目实战、面试突击为导向。从Java基础性能提升为切入点,循序渐进,...
  • Java进阶(三十一) Web服务调用

    万次阅读 2016-06-24 11:44:51
    Java进阶(三十一) Web服务调用前言 有朋友问了一个问题:如何调用已知的音乐服务接口,服务文档如下: https://www.evernote.com/shard/s744/sh/c37cd503-68fc-4406-b8f2-5e90095be303/19b67e36aa2ccd19 查看代码...
  • 套餐中一共包含6门Java进阶必学的核心知识(共78课时) 课程1:《Java进阶高手课-Java基础编程提升》  课程2:《Java进阶高手课-并发编程透彻理解》  课程3:《Java进阶高手课-深入JVM虚拟机》...
  • Java进阶(四十三)线程与进程的区别

    万次阅读 多人点赞 2016-09-28 08:50:07
    Java进阶(四十三)线程与进程的区别1、线程的基本概念  概念:线程是进程中执行运算的最小单位,是进程中的一个实体,是被系统独立调度和分派的基本单位,线程自己不拥有系统资源,只拥有一点在运行中必不可少的...
  • Java 进阶书籍

    千次阅读 2019-08-14 21:10:48
    Java 进阶书籍 《Java编程思想》 作者:Bruce Eckel 版本(年):第4版(2007-6) 书评 《Effective Java中文版》 作者:[著]Joshua Bloch;[译]俞黎敏 版本(年):第3版(2018-12) 书评 《Effective Java Third ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 24,805
精华内容 9,922
关键字:

java进阶

java 订阅