Java 基础
Java 基础
dapeng1248
历史进程,个人奋斗!
展开
-
Java 易错点 总结
1. 基础1.1. 正确使用 equals 方法Object的equals方法容易抛空指针异常,应使用常量或确定有值的对象来调用 equals。举个例子:// 不能使用一个值为null的引用类型变量来调用非静态方法,否则会抛出异常String str = null;if (str.equals("SnailClimb")) { ...} else { ..}运行上面的程序会抛出空指针异常,但是我们把第二行的条件判断语句改为下面这样的话,就不会抛出空指针异常,else 语原创 2020-10-29 16:23:52 · 301 阅读 · 1 评论 -
BIO,NIO,AIO 总结
Java 中的 BIO、NIO和 AIO 理解为是 Java 语言对操作系统的各种 IO 模型的封装。程序员在使用这些 API 的时候,不需要关心操作系统层面的知识,也不需要根据不同操作系统编写不同的代码。只需要使用Java的API就可以了。在讲 BIO,NIO,AIO 之前先来回顾一下这样几个概念:同步与异步,阻塞与非阻塞。关于同步和异步的概念解读困扰着很多程序员,大部分的解读都会带有自己的一点偏见。参考了 Stackoverflow相关问题后对原有答案进行了进一步完善:When you e原创 2020-10-29 16:06:02 · 153 阅读 · 0 评论 -
代理模式详解:静态代理+JDK/CGLIB 动态代理
1. 代理模式代理模式是一种比较好的理解的设计模式。简单来说就是 我们使用代理对象来代替对真实对象(real object)的访问,这样就可以在不修改原目标对象的前提下,提供额外的功能操作,扩展目标对象的功能。代理模式的主要作用是扩展目标对象的功能,比如说在目标对象的某个方法执行前后你可以增加一些自定义的操作。举个例子:你的找了一小红来帮你问话,小红就看作是代理我的代理对象,代理的行为(方法)是问话。https://medium.com/@mithunsasidharan/underst原创 2020-10-29 15:59:48 · 202 阅读 · 0 评论 -
Java 反射机制
反射机制介绍JAVA 反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为 java 语言的反射机制。获取 Class 对象的四种方式如果我们动态获取到这些信息,我们需要依靠 Class 对象。Class 类对象将一个类的方法、变量等信息告诉运行的程序。Java 提供了四种方式获取 Class 对象:1.知道具体类的情况下可以使用:Class alunbarCla原创 2020-10-29 15:54:14 · 95 阅读 · 0 评论 -
Java 常见关键字总结:final、static、this、super
final 关键字final关键字,意思是最终的、不可修改的,最见不得变化 ,用来修饰类、方法和变量,具有以下特点: final修饰的类不能被继承,final类中的所有成员方法都会被隐式的指定为final方法; final修饰的方法不能被重写; final修饰的变量是常量,如果是基本数据类型的变量,则其数值一旦在初始化之后便不能更改;如果是引用类型的变量,则在对其初始化之后便不能让其指向另一个对象。 说明:使用final方法的原因有两个。第一个原因是把方法锁定,以防任何继承原创 2020-10-29 15:49:07 · 373 阅读 · 0 评论 -
Java基础三:Java 核心技术
目录3. Java 核心技术3.1. 反射机制3.2. 异常3.3. 多线程3.4. 文件与 I\O 流3. Java 核心技术3.1. 反射机制JAVA 反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为 java 语言的反射机制。3.1.1.静态编译和动态编译静态编译: 在编译时确定类型,绑定对象 动态编译: 运行时确定类型,绑定对象3原创 2020-10-29 15:33:12 · 3749 阅读 · 0 评论 -
Java基础二:Java 面向对象
目录2. Java 面向对象2.1. 类和对象2.2. 面向对象三大特征2.3. 修饰符2.4. 接口和抽象类2.5. 其它重要知识点2. Java 面向对象2.1. 类和对象2.1.1. 面向对象和面向过程的区别面向过程 :面向过程性能比面向对象高。 因为类调用时需要实例化,开销比较大,比较消耗资源,所以当性能是最重要的考量因素的时候,比如单片机、嵌入式开发、Linux/Unix 等一般采用面向过程开发。但是,面向过程没有面向对象易维护、易复用、易扩展。 面向对象原创 2020-10-29 15:18:31 · 178 阅读 · 0 评论 -
Java基础一:Java 基本功
1. 剖析面试最常见问题之 Java 集合框架 1.1. 集合概述 1.1.1. Java 集合概览 1.1.2. 说说 List,Set,Map 三者的区别? 1.1.3. 集合框架底层数据结构总结 1.1.3.1. List 1.1.3.2. Set 1.1.3.3. Map 1.1.4. 如何选用集合? 1.1.5. 为什么要使用集合? 1.1.6. Iterator 迭代器 1.1.6.1. 迭代器 Iterator 是什么?原创 2020-10-29 14:11:41 · 470 阅读 · 0 评论