
JAVASE
文章平均质量分 90
Jerry-Samon
Don't be shy to ask questions
展开
-
如何理解Java中的协变
前言:引用C++中的一段, 在C++中,只要原来的返回类型是指向类的指针或引用,新的返回类型是指向派生类的指针或引用,覆盖的方法就可以改变返回类型 。这样的类型称为协变返回类型(Covariant returnstype).关于协变:协变和逆变维基上写的很复杂,但是总结起来原理其实就一个。子类型可以隐性的转换为父类型说个最容易理解的例子,int和float两个类型的关系可以写成下面这样。int ≦ float :也就是说int是float的子类型。按照上面的原理来说,就是int可以转换成f原创 2021-02-20 22:00:51 · 1150 阅读 · 0 评论 -
javaSE注解核心剖析
**注解概念:**> 简单理解注解就是一种标记,常用于代替冗余的配置(XML,properties),又或者是编译器进行的一些检查如JDK自带的Override、Deprecated等。可以直白的来讲有注解和没有注解本质上不影响程序的运行。注解的作用在于「注解的处理程序」,注解处理程序通过捕获被注解标记的代码然后进行一些处理,这就是注解工作的方式。**Java中进行定义注解:**Java中进行定义注解很简单,直接进行使用@interface即可完成注解的定义。```javapublic @i原创 2021-02-14 08:55:31 · 306 阅读 · 3 评论 -
并发与多线程
概念介绍:所谓线程就是程序的之中的单独的流程序。而线程本身是不能独立运行的只能运行在程序之中。线程只能只用分配给程序的环境和资源,而多线程指的就是在单个程序之中可以同时运行多个线程进行执行。多线程编程的目的: 多线程编程的最大目的就是最大限度的使用CPU资源,减少资源使用的浪费。线程和进程之间的区别: (1)多进程之间的数据状态是完全独立的,而多线程之间共享一块内存空间...原创 2018-08-26 18:42:43 · 255 阅读 · 0 评论 -
JAVA 集合深入浅出
概念: 集合类存放于java.util包中。 集合类存放的都是对象的引用,而非对象本身,出于表达上的便利,我们称集 合中的对象就是指集合中对象的引用(reference)。 集合类型主要有3种:set(集)、list(列表)和map(映射)。java集合容器结构: 对象的存储:①数组(基本数据类型 & 引用数据类型) ②集合(引用数据类型)>...原创 2018-09-03 07:56:07 · 236 阅读 · 0 评论 -
类加载机制
类加载机制概念:加载class文件的信息加载到内存中。由硬盘到内存的迁移。将其放在运行时数据区的方法区内,然后在堆区创建一个java.lang.Class对象,用来封装类在方法区内的数据结构。类加载的追中产品是位于堆区的class对象。连接类被加载后就进入了连接阶段,链接就是将已经读入到内存的类的二进制数据合并到虚拟机的运行环境中去。A)验证验证被加载累的正确性B)准备为类的静态变...原创 2019-03-04 07:47:30 · 171 阅读 · 0 评论 -
设计模式基础
**基本概念:**简单来理解就是一套适用于特定场景的代码段。用于解决某个业务场景之下的代码设计总结。就可以理解为设计模式。(1)单例模式的设计与实现饿汉式:(线程安全)public class Singleton{ private final static Singleton singleton = new Singleton(); private Singleton(){ } p...原创 2019-04-25 17:59:37 · 122 阅读 · 0 评论 -
Jvm内存模型以及GC回收机制
前言:作为一个合格Java程序员 ,我觉得对于JVM了解是很有必要。对于代码中常见的内存点以及GC回收策略了解更是很有必要。这是写出高质量程序的基准;先卖一个关子吧:观察下列代码 并尝试解释抛内存溢出异常的原因:public void Test(){List<User> userInfo = new ArrayList<User>(); while(true){...原创 2019-05-15 10:55:36 · 564 阅读 · 0 评论 -
JAVASE深度学习笔记 - - 泛型使用详解
泛型所谓泛型就是变量类型的参数化,简单来理解就是(在不创建新的类型的情况下,通过泛型指定的不同类型来控制形参具体限制的类型)。也就是说在泛型使用过程中,操作的数据类型被指定为一个参数,这种参数类型可以用在类、接口和方法中,分别被称为泛型类、泛型接口、泛型方法。从使用的角度来讲的话就是,为了提高安全性,使用泛型的基础之上程序编译期间没有问题的话,那么执行期间一定没有问题,看下边这个例子;在这里...原创 2019-08-12 17:57:03 · 322 阅读 · 0 评论