![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
JavaSE
文章平均质量分 66
JavaSE
水能zai舟
每一次提交务必慎重,切勿基于样例解题。
展开
-
JavaSE面试题之一:写一个Singleton
JavaSE面试题之一:写一个Singleton关于Singleton的说明单例设计模式,即某个类在系统中只能有一个实例对象可被获取和使用的代码模式例如:代表JVM运行环境的Runtime类要点某个类只能有一个实例构造器私有化必须自行创建这个实例含有一个该类的静态变量来保存这个唯一实例必须自行向整个系统提供这个实例对外提供获取该实例对象的方式直接暴露用静态变量的get方法获取常见形式饿汉式:直接创建对象,不存在线程安全问题直接实例化(简洁直原创 2021-03-02 15:13:04 · 82 阅读 · 0 评论 -
Java SE 重点补遗
Java SE 补遗1.JDK和JRE的区别jdk:开发者工具包(使用的话需要在本机配置环境变量)jre:java的运行环境2.编译型语言(对比解释型语言)java属于编译型+解释型语言此外java属于静态准动态语言java是强类型语言3.注释行内注释://多行注释:/* */文档注释:/** */4.数据类型8大基本数据类型引用数据类型(非基本类型一般都是引用类型)类接口数组5.类型转换自动类型转化低转高(子类转父类)强制类型转化原创 2021-01-18 21:42:44 · 97 阅读 · 1 评论 -
Java 优先队列(PriorityQueue)的使用
常用方法1.add(e) 2.element()、peek()element()和peek()的语义完全相同,都是获取但不删除队首元素,也就是队列中权值最小的那个元素,二者唯一的区别是当方法失败时前者抛出异常,后者返回null。根据小顶堆的性质,堆顶那个元素就是全局最小的那个;由于堆用数组表示,根据下标关系,0下标处的那个元素既是堆顶元素。所以直接返回数组0下标处的那个元素即可。3...原创 2019-02-22 17:14:44 · 16122 阅读 · 0 评论 -
Java sort + cmp 自定义排序
Java定义cmp对象进行sort排序:1.排序对象必须是封装类而不能是基本数据类型;2.调用Arrays.sort(a, b, c, d)进行排序,a为数组,b、c为范围,d为你定义的cmp;3.定义的cmp对象需要重写Comparator<>类的compare方法; Code(晚上的版本很多,我这里写的是最简练,最实用的):import java.util...原创 2018-12-22 16:22:09 · 1238 阅读 · 0 评论 -
Java多态
向上转型与向下转型重点:向下转型要加强转,而且要加instanceof判断请看下面这段代码:public class Main { public static void main(String args[]) { Animal a = new Dog();//子传父,向上转型无需强转 a.show(); if(a instanceof Dog) { Dog b = (Dog)...原创 2018-04-16 16:55:16 · 172 阅读 · 0 评论 -
java单例设计模式-饿汉式与懒汉式
推荐使用饿汉式,二者区别在于:从实现方式来讲他们最大的区别就是懒汉式是延时加载,他是在需要的时候才创建对象,而饿汉式在虚拟机启动的时候就会创建。代码:public class SingletonDemo { public static void main(String args[]) { Singleton1 s1 = Singleton1.getInstance(); s1.print...原创 2018-04-02 16:46:26 · 104 阅读 · 0 评论 -
java对象的实例化过程
1.类加载(等到我看完类加载的具体步骤会回来补充)2.对象实例化 <1>开辟内存空间进行隐式初始化 <2>显式的初始化 <*>(执行构造块) <3>调用构造函数 <4>返回指针...原创 2018-03-29 20:10:55 · 140 阅读 · 0 评论 -
java代码块(普通块、构造块、静态块)
1.普通块方法体内部由大括号{}括起,执行顺序为按照正常的执行顺序(先出现,先执行)执行。2.构造块类的内部由大括号{}括起,每次构造对象时都会被调用,且优先于构造函数执行。3.静态块(在此借鉴https://blog.csdn.net/qq_27093465/article/details/75339803)在类的内部使用,形式为static{},静态块一般用于初始化类,为类的属性初始化,每个静...原创 2018-03-29 19:46:31 · 1785 阅读 · 2 评论 -
java基本数据类型的转化
一.转化原则1.低存储位--->高存储位(自动转化)2.高存储位--->低存储位(强制转化)!理解:就好比java注重安全规则,你从低向高爬,身处低位不怕摔;但从高向低跳,身处高位就可能出危险。二.存储位顺序byte<short<char<int<long<float<double三.易错小程序大家觉得下面这段程序有什么问题,感觉正确吗?public...原创 2018-03-19 21:45:45 · 107 阅读 · 0 评论 -
java封装类(wrapper类)
一.封装类的构造器:1.对基本数据类型:Integer i=new Integer(10);2.对字符型:Integer i=new Integer("10");二.封装类的3种方法:1.valueOf();//静态方法,返回的是一个指定类型的封装类实例(目前jdk支持自动装箱与拆箱)2.***Value();//把封装类对象转化成基本数据类型的值3.parse***();//把String的对象...原创 2018-03-15 19:59:50 · 58844 阅读 · 6 评论 -
java基础知识
1.java的特点:纯面向对象、与平台无关、安全、稳定、多线程等。2.java支持平台无关性的原因:java虚拟机(Java Virtual Machine,JVM);3.java虚拟机运行的步骤:由编译器将用户程序转化为字节码(.java->.class);由java虚拟机解释执行。...原创 2018-03-08 09:25:04 · 95 阅读 · 0 评论