
Java
文章平均质量分 85
Mr Lee_
这个作者很懒,什么都没留下…
展开
-
单例模式双重锁中volatile的作用
Java面试中级题,android面试原创 2022-06-14 16:00:05 · 659 阅读 · 3 评论 -
Java static关键字总结
static 关键字在Java中,被static声明过的成员变量称为静态成员变量,也称为类变量。如果一个成员使用了static关键字修饰,那么这个成员就不在属于对象了,而是属于类,在这个类中的所有对象实例所共享,可以节省很多内存空间;也可以用一句话来总结,就是方便在没有创建对象的情况下来进行调用,也就是说,被static所修饰过的成员变量或者成员方法,不需要去new一个实例对象,然后再进行调用,而是可以直接通过 类名就可以去访问,举个例子:public class student{ //定.原创 2021-06-19 16:15:10 · 192 阅读 · 0 评论 -
为什么重写equals()方法就必须重写hashCode()方法呢?
文章目录前言一、equals和==二、hashCode()方法三、hashCode() 与 equals()1.不会创建“类对应的散列表”,不存在重写equals()要重写hashCode()2.当类需要放在HashTable、HashMap、HashSet等hash结构的集合时需要重载hashCode()总结前言对于Java开发或者Android开发的小伙伴来说,在面试的时候,应该都会遇到面试官问这么一个问题:你知道equals()和 == 的区别在哪嘛?小伙伴的第一反应一般都会是回答:equal原创 2021-06-08 17:12:22 · 741 阅读 · 0 评论 -
Java 代理模式(动态代理)
代理模式为其他对象提供一个代理以控制对某个对象的访问。代理类主要负责为委托了(真实对象)预处理消息、过滤消息、传递消息给委托类,代理类不现实具体服务,而是利用委托类来完成服务,并将执行结果封装处理,动态代理在Java中有着广泛的应用,最常见的可能就是Spring AOP了,还有Java注解对象获取、日志等各个方面。由于Java动态代理与Java反射机制关系紧密,所以在阅读这篇文章之前读者需要对Java反射机制有一定的了解,如果不了解反射机制也不需要慌,这里推荐一篇文章反射机制详解,这篇文章对...原创 2020-12-07 16:08:04 · 566 阅读 · 0 评论 -
JVM 类的加载机制
1、JVM 运行实例中会存在多个 ClassLoader,不同的 ClassLoader 会从不同的地方加载字节码文件。它可以从不同的文件目录加载,也可以从不同的 jar 文件中加载,也可以从网络上下载字节码再进行加载。那JVM是如何进行类的加载的呢?一个类从被加载到虚拟机内存中开始,直到卸载出内存为止,它的整个生命周期包括:加载、验证、准备、解析、初始化、使用和卸载这7个阶段。其中,验证、准备和解析这三个部分统称为连接(linking)。加载通过一个类的全限定名来获取该类的二进制字节流,将这个原创 2020-10-30 14:34:29 · 546 阅读 · 0 评论 -
RTMP,RTSP,HLS比较与分析
Http Live Streaming(HLS)是苹果公司实现的基于Http的流媒体传输协议,可实现流媒体的直播以及点播,HLS传输协议与其他传输协议的不同在于客户端获取到的并不是一个完整的数据流,而是将数据流存储为连续的、短时长的媒体文件,即MPEG-TS格式的文件,客户端这是通过不断的下载这些小文件,然后进行按顺序的播放从服务器那边获取到的文件,就实现了视频的直播效果 。而且数据是通过Http...原创 2020-04-01 15:55:57 · 1480 阅读 · 0 评论 -
进程与线程
进程至少包含三个组成要素:程序快、代码块以及进程控制块;进程是系统中资源分配和保护的基本单位;线程作为CPU的调度和分派的基本单位;每个进程在创建的时候,至少要为该进程创建一个线程,即进程中至少有一个或多个线程;同一进程的多个线程共享该进程的资源,但是线程并不拥有资源;创建线程和撤销线程的开销远小于进程的创建与撤销;在同一进程中的不同线程之间的独立性要比不同进程间的独立性低得多,因为为...原创 2019-06-19 22:02:51 · 217 阅读 · 0 评论 -
Java--用AWT编写图形用户界面(入门篇二)
AWT事件处理模型在事件处理的过程中,主要涉及以下三类对象:Event:事件,用户对界面操作在Java语言上的描述,以类的形式出现Event Source:事件源,事件发生的场所,通常就是各种组件Event Handler:事件处理者,接受事件对象并对其进行处理的对象举个例子:TestButton.javaimport java.awt.Button;import java.awt...原创 2019-03-28 20:55:13 · 5559 阅读 · 2 评论 -
Java--用AWT编写图形用户界面(入门篇一)
java.awt包提供了基本的GUI设计工具,主要包括组件(Component)、容器(Container)和布局管理器(LayoutManager);Java的图形用户界面的最基本组成部分是组件(Component),组件不能独立地显示出来,必须将组件放在一定的容器中才可以显示出来;组件(Component)类的部分重要的成员方法有:getComponentAt(int x,int y) ...原创 2019-03-27 23:24:52 · 46135 阅读 · 6 评论 -
Java中的输入/输出流类
Java中包含的输入/输出流类1.java.io包中的接口(1)处理字节流的有DataInput接口和DataOutput接口,RandomAccessFile同时实现了这两个接口;(2)处理对象流的有ObjectInput接口和ObjectOutput接口,ObjectInputStream类实现了ObjectInput接口,ObjectOutputStream类实现了ObjectOutp...原创 2019-03-23 16:33:27 · 1939 阅读 · 0 评论 -
Java基础知识点
1.结构化程序设计原则结构化程序设计方法的主要原则包括自顶向下、逐步求精、模块化和限制使用goto语句;(1)自顶向下:程序设计时,应该先考虑整体,后考虑细节;先考虑全局目标,后考虑局部目标;(2)逐步求精:对复杂的问题进行逐步细化;(3)模块化:把程序要解决的总目标分解为分目标,再进一步分解为具体的小目标;(4)限制goto语句:①滥用goto语句确实有害,应尽量避免;②完全避免使...原创 2019-03-29 17:09:58 · 210 阅读 · 0 评论 -
Java 线程的详解
1.什么是线程? Java中的线程是由CPU、代码、数据这三部分构成的,每个线程都是一个能独立执行自身指令的不同控制流,因此一个包含多线程的进程也能够实现多项任务的并发执行。系统在产生一个线程或在各个线程之间切换时,所占资源要比进程小的多,因此线程也被称为轻型进程; 线程可以定义为一个程序中的单个执行流,多线程是指一个程序中包含多个执行流,多线程是实现并发的一种有效手段; ...原创 2019-03-25 19:51:14 · 468 阅读 · 0 评论 -
Java运算符和表达式
1.按照运算符的操作数的数目划分可分为以下几类:(1)一元运算符:如++、–、+、-等;(2)二元运算符:如+、-、、>等;(3)三元运算符:如?:等;2.按照运算符的功能划分,可分为以下几类:(1)算数运算符:+、-、、/、%、++、–等;(2)关系运算符:>、<、>=、<=、==、!=等;(3)布尔逻辑运算符:!、&&、||;(4)...原创 2019-03-07 22:28:54 · 344 阅读 · 0 评论 -
While 循环语句 和do while循环语句
While循环语句的格式while(循环条件){}如果循环条件的值为true,那么就执行大括号里面的内容,否则不执行大括号里面的内容(如果大括号外面还有内容的话就直接执行大括号外面的内容)注意:循环条件后面不能加分号,不然程序会进入死循环编写个1加到5的案例; } static { System.out.println("Dome的静态构造块"); } public Dome(){ S...原创 2018-11-21 23:06:08 · 716 阅读 · 0 评论 -
Java中super和this关键字的区别
属性的区别:this访问本类中的属性,如果本类没有此属性则从父类中继续查找。super访问父类中的属性;方法的区别:this访问本类中的方法,如果本类没有此方法则从父类中继续查找。super访问父类中的方法;构造的区别:this调用本类构造,必须放在构造方法的首行。super调用父类构造,必须放在子类构造方法首行;super使用super调用父类的构造方法当用子类的构造方法创建一个子类的...原创 2018-12-05 21:15:11 · 187 阅读 · 0 评论 -
Java 对象的上转型对象
什么是对象的上转型对象,举个例子假设Animal类是Tiger类的父类,当用子类创建一个对象,并把这个对象的引用放到父类的对象中时,称对象a是对象b的上转型对象;Animal a;Tiger b = new Tiger();a=b;上转型对象:(1)上转型对象不能操作子类新增的成员变量,不能调用子类的新增方法;(2)上转型对象可以访问子类继承或隐藏的成员变量,也可以调用子类继承的方...原创 2018-12-08 20:38:17 · 880 阅读 · 0 评论 -
Java 接口interface的基础
定义接口的时候是由关键字interface来定义自己是一个接口,格式如下:interface 接口名接口体中包含常量的声明和抽象方法两部分接口体中只有抽象方法,没有普通的方法,而且接口体中所有的常量的访问权限一定都是public,而且是static常量,所有的抽象方法的访问权限一定都是public;eg:interface A{public static final int MAX=...原创 2018-12-09 01:16:27 · 273 阅读 · 0 评论 -
Java 内部类以及匿名内部类
什么的是内部类?内部类就是在一个类中定义另外一个类,这样的类就被称为内部类;一般来说内部类包括这四种:成员内部类、局部内部类、匿名内部类和静态内部类。内部类与外嵌类之间的关系内部类的外嵌类的成员变量在内部类中仍然有效,内部类中的方法也可以调用外嵌类中的方法;内部类的类体中不可以声明类变量和类方法;外嵌类的类体中可以用内部类声明对象,作为外嵌类的成员;内部类仅供它的外嵌类使用,其他类不...原创 2018-12-10 00:29:05 · 381 阅读 · 0 评论 -
Java 异常类try-catch语句
Java使用try-catch语句来处理异常,将可能出现的异常操作放在try部分,一旦try部分抛出异常对象,或调用某个可能抛出异常对象的方法,并且该方法抛出了异常对象,那么try部分就会立刻结束执行,转向执行相应的catch部分。程序可以将发生异常后的处理放在catch部分,try-catch语句可以有多个catch部分,分别处理相应的异常;try-catch语句的格式如下:try { ...原创 2018-12-11 01:07:25 · 2112 阅读 · 0 评论 -
Java 异常类try-catch语句
Java使用try-catch语句来处理异常,将可能出现的异常操作放在try部分,一旦try部分抛出异常对象,或调用某个可能抛出异常对象的方法,并且该方法抛出了异常对象,那么try部分就会立刻结束执行,转向执行相应的catch部分。程序可以将发生异常后的处理放在catch部分,try-catch语句可以有多个catch部分,分别处理相应的异常;try-catch语句的格式如下:try { ...原创 2018-12-11 01:08:11 · 1653 阅读 · 0 评论 -
switch 选择判断语句
Switch语句首先先了解一下Switch语句的格式:switch(表达式){case 取值1: 执行语句; break;case 取值2: 执行语句; break;……default: 执行语句; break;}这里需要注意case后面跟的是冒号break的作用是执行完这条语句后跳出接下来用一个案例来帮助大家理解一下编一个程序,输入1,结果输出星期一;输入2,结果就输出星期...原创 2018-11-01 19:06:02 · 10326 阅读 · 2 评论