JavaSE
文章平均质量分 66
JavaSE
不断前进的皮卡丘
你有多努力的现在,就会有多无惧的未来。加油吧,少年!
展开
-
Java反射机制
Java反射机制前言Java反射机制前言Java反射机制反射机制原理示意图原创 2022-02-28 15:45:31 · 6539 阅读 · 0 评论 -
Java集合框架总结
本文对Java集合做了总结,包含源码分析,层层深入同时文章提供了大量的总结图,方便记忆和阅读理解原创 2022-02-26 00:32:34 · 1193 阅读 · 3 评论 -
Java多线程
文章目录一、基本概念1.进程和线程2.进程和线程的关系3.多线程并发的理解二、创建线程的方式1.方式一继承Thread类1.1步骤1.2start方法的作用1.3如果直接调用run方法1.4直接调用run方法的内存图1.5调用start方法的内存图2.方式二实现Runnable接口(比较常用)3.采用匿名内部类创建线程4.线程对象的生命周期5.相关方法1.设置线程名字 和获取线程名字2.获取当前线程对象3.sleep方法3.1sleep方法的面试题4.如何唤醒休眠的线程5.如何终止一个线程1.强制终止一个线原创 2022-02-24 20:55:53 · 642 阅读 · 0 评论 -
Java的File类
File类的理解常用构造器常用方法代码示例练习File类的理解1.File类的一个对象,代表一个文件或一个文件目录(俗称:文件夹)2.File类声明在java.io中3.File类中涉及到关于文件或文件目录的创建、删除、重命名、修改时间、文件大小 等方法,并没有涉及到写入或读取文件内容的操作如果需要读取或写入文件内容, 必须使用IO流来完成4.后续File类的对象常会作为参数传递到流的构造器中,指明读取或写入的“终点”5.File不能访问文件内容本身6.想要在Java程序中...原创 2022-02-13 11:36:19 · 2160 阅读 · 2 评论 -
Java包装类
本文对包装类做了详细的总结,里面包含包装类的常见面试题,并且深入源码,分析原因。原创 2022-02-27 17:08:05 · 405 阅读 · 0 评论 -
String类
String字符串的存储原理关于String的面试题StringBufferStringBuilder扩容机制的源码分析String字符串的存储原理关于String的面试题最近我面了12个人,发现这个基础题都答得不好面试篇–String字符串整理(底层角度分享)【完整版】StringBufferStringBuilder扩容机制的源码分析对于StringBuffer和StringBuilder的扩容机制和源码分析,大家可以看这篇StringBuffer和StringBu.原创 2022-03-05 20:40:41 · 449 阅读 · 0 评论 -
Java注解---通俗易懂
本文转载于Java注解-最通俗易懂的注解Annotation 中文译过来就是注解、标释的意思,在 Java 中注解是一个很重要的知识点,但经常还是有点让新手不容易理解。我个人认为,比较糟糕的技术文档主要特征之一就是:用专业名词来介绍专业名词。比如:Java 注解用于为 Java 代码提供元数据。作为元数据,注解不直接影响你的代码执行,但也有一些类型的注解实际上可以用于这一目的。Java注解是从 Java5 开始添加到 Java 的。 这是大多数网站上对于 Java注解,解释确实正确,但是说实在转载 2022-03-01 09:20:42 · 320 阅读 · 0 评论 -
Java网络编程基础
本文对Java基础部分的网络编程,做了总结,有利于后面学web。网络编程一、网络的相关概念1.网络通信一、网络的相关概念1.网络通信原创 2022-02-27 14:36:03 · 592 阅读 · 0 评论 -
成员方法的传参机制
成员方法的传参机制,要搞清楚这个机制,对后面的学习很有帮助,想要弄清楚这个过程,要学会把这个执行过程的内存图画出来原创 2022-02-14 03:51:22 · 414 阅读 · 0 评论 -
单例设计模式
设计模式概念1.设计模式是静态方法和属性的经典使用2.设计模式是大量时间中总结和理论化后优选的代码结构、编程风格、以及解决问题的思考方式3.我们可以这样理解,设计模式就像是一个棋谱,遇到不同的棋局,我们就用不同的棋谱,免去我们自己的思考。单例设计模式单例模式的概念单例就是单个实例1.类的单例设计模式,就是采取一定的方法,保证在整个的软件系统中,对应某一个类来说,它只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法比如说在软件开发中,有一个类是核心类,它很耗费资源,而且我们只需要一个原创 2022-02-20 11:18:48 · 352 阅读 · 0 评论 -
构造器详解
构造器基本语法构造器介绍注意事项对象创建的流程分析基本语法 [修饰符] 方法名(形参列表){ 方法体;}举例:class Test{ public static void main(String[]args){ Person p1=new Person(); Person p2=new Person("tom",12); }}class Person{ String name; int age; public Person(){ } public Pe原创 2022-02-16 16:27:32 · 717 阅读 · 0 评论 -
代码块详解
1.基本介绍基本语法代码块的好处1.相当于另外一种形式的构造器((对构造器的补充机制),可以用来做初始化的操作2.场景:如果多个构造器中都有重复的语句,可以抽取到初始化块中,提高代码的复用性package codeblock;public class code1 { public static void main(String[] args) { new Movie(); System.out.println("------------------原创 2022-02-20 10:01:52 · 798 阅读 · 0 评论 -
final关键字
1. 基本介绍final中文意思:最后的,最终的final可以修饰类,属性,方法和局部变量1.final修饰的类,不可以被继承2.final修饰的方法,不可以被重写3.final修饰的变量为常量,不可以修改public class Final01 {public static void main(String[] args) { E e = new E();//e.TAX_RATE = 0.09; }}//如果我们要求 A 类不能被其他类继承//可以使用 final 修饰 A原创 2022-02-20 13:33:18 · 238 阅读 · 0 评论 -
this关键字
为什么需要this关键字下面我们通过下面的代码来体会一下class Test{ public static void main(String[]args){ User user=new User("tom"); System.out.println(user.name); }}class User{ String name; int age; public User(String name){ name=name; }}最后输出的结果是null,和我们想象的结原创 2022-02-17 17:09:17 · 308 阅读 · 0 评论 -
Java的可变参数
前言基本概念基本语法入门案例注意事项和使用细节前言这里面涉及到方法的重载的概念,如果不清楚的话,可以点击下面链接看看 方法的重载和重写基本概念java 允许将同一个类中多个同名同功能但参数个数不同的方法,封装成一个方法, 就可以通过可变参数实现。 基本语法访问修饰符 返回类型 方法名(数据类型… 形参名) {} 入门案例假设现在有一个需求,需要我们完成一个功能,它可以计算2个数的和,3个数的和,4,5……我们可以看出来参数个数不确定。分析:如果不用可变参数的话...原创 2022-02-15 13:58:22 · 458 阅读 · 0 评论 -
递归的执行机制
递归递归就是方法自己调用自己规则 1.执行一个方法的时候,就创建一个新的受保护的独立空间(栈空间) 2.方法的局部变量是独立的,不会互相影响 3.如果方法中使用的是引用数据类型变量,就会共享该引用类型的数据 4.递归必须要有结束条件,不然会出现栈溢出 5.递归占用很大的内存 6.当一个方法执行完毕,或者遇到return,就会返回,遵守谁调用,就把结果返回给谁,同时当方法执行完毕或者返回的时候,这个方法也就执行完毕了 递归调用的执行机制public class Recursion01原创 2022-02-14 05:16:04 · 469 阅读 · 0 评论 -
类和对象的关系
类和对象的关系,类可以看成是一个模板,是抽象的,对象则是具体的,类是把对象的共同特征提取出来的,类在现实世界不存在,而对象在现实生活中是存在的原创 2022-02-14 00:33:00 · 205 阅读 · 0 评论 -
Java 类和对象的内存分配机制
Java内存的结构分析栈: 一般存放基本数据类型(局部变量)堆: 存放对象(Cat cat , 数组等) new出来的结构放在堆方法区: 常量池(常量,比如字符串) , 类加载信息Java创建对象的流程简要分析Person p = new Person();p.name = “jack”;p.age = 10先加载 Person 类信息(属性和方法信息, 只会加载一次)在堆中分配空间, 进行默认初始化(看规则)把地址赋给 p , p 就指向对象进行指定初始化,原创 2022-02-14 01:16:26 · 475 阅读 · 0 评论 -
Java 数组
数组数组一维数组二、使用步骤1.引入库2.读入数据总结数组 数组可以存放多个同一类型的数据。数组也是一种数据类型,是引用类型。即: 数(数据)组(一组)就是一组数据 一维数组1.数组是引用数据类型,数组的父类是Object类2.数组是一个容器,可以容纳多个元素(数组是一个数据的集合)3.数组可以存储基本数据类型的数据,也可以是引用数据类型的数据4.数组是引用数据类型,所有数组对象是在堆内存中的(数组存储在堆中)5.数原创 2022-02-13 21:59:26 · 512 阅读 · 0 评论 -
进制转换问题
进制一、进制的介绍二、进制的转换问题1.二进制和十进制的转换二进制转换为十进制十进制转换为二进制2.二进制和八进制的转换二进制转换为八进制八进制转换为二进制3.二进制和十六进制的转换二进制转换为十六进制十六进制转换为二进制一、进制的介绍对于整数,有四种表示方式:二进制: 0, 1 ,满 2 进 1. 以 0b 或 0B 开头。十进制: 0-9 ,满 10 进 1。八进制: 0-7 ,满 8 进 1. 以数字 0 开头表示。十六进制: 0-9 及 A(10)-F(15) ,满 16...原创 2022-02-13 18:54:26 · 620 阅读 · 0 评论 -
标识符和关键字
标识符和关键字前言一、标识符1.命名规则2.命名规范二、关键字三、保留字前言规范的命名有助于我们的开发和团队的协作 一、标识符1.命名规则2.命名规范 包名: 多单词组成时所有字母都小写: aaa.bbb.ccc //比如 com.hsp.crm类名、接口名: 多单词组成时,所有单词的首字母大写: XxxYyyZzz[ 驼峰] 比如: TankShotGame变量名、方法名: 多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写: xxxYyy...原创 2022-02-13 18:24:45 · 457 阅读 · 0 评论 -
运算符详解
运算符一、算术运算符1、定义2、算术运算符介绍3、取模%的本质4.自增++二、关系运算符1、定义2、关系运算符介绍3、细节说明三、逻辑运算符1、定义2、逻辑运算符介绍3、运算规则四、赋值运算符1、定义2、赋值运算符介绍3、赋值运算符特点五、三元运算符1.基本语法2.使用细节 一、算术运算符 1、定义算术运算符是对数值类型的变量进行运算的 2、算术运算符介绍3、取模%的本质% 是用来取余数的, 只能用在整数取模 a%b的本质是:a % b = a - a / b * ..原创 2022-02-13 18:06:49 · 396 阅读 · 0 评论 -
Java的多态机制
多态1.概念多态是面向对象的三大特征之一,指的是一种事物有多种形态,通过多态,我们可以提高程序的扩展力,降低程序的耦合度。比如说有这样的一种场景:你养了小动物,小猫,小狗,小鸟,它们都是动物,每个小动物都要吃东西,我们可以设置它们都有吃的功能,但是它们吃的东西不一样,所以需要重写父类的方法。多态对象只能调用父类中定义过的,然后子类中重写的方法,并不能调用子类的特有功能。 2.向上转型和向下转型 1.向上转型 子----->父(自动类型转换)2.向下转型 父----->子原创 2022-01-23 23:09:34 · 835 阅读 · 0 评论 -
方法的重载和重写
方法的重载和重写 方法的重载和重写前言一、方法的重载(Overload)1.为什么要使用方法重载2.满足方法重载的条件3.举例说明二、方法的重写(Override)1.什么时候考虑方法的重写2.方法重写的条件3.注意事项前言 方法的重载和重写需要大家掌握 ,在笔试面试的时候可能问到。我在自己的理解上做了一下总结,希望可以帮助大家 一、方法的重载(Overload) 1.为什么要使用方法重载一些功能相似的方法可以写成同样的方法名 功能不同的时候,尽可能让方法名不同。2原创 2022-01-21 15:57:43 · 6974 阅读 · 0 评论 -
自动类型转换和强制类型转换
自动类型转换: 在Java中,任何情况下,整数类型的字面值默认当成int类型处理小容量可以自动转换成大容量,这种操作被称为自动类型转换容量大小的定义:容量大小不是指数据类型的字节数,而是指这个数据类型可以表示的数的大小各个数据类型的容量大小容量从小到大的排序:byte<short(char)<int<long<float<double,其中char可以表示大的整数强制类型转换大容量转换成小容量,可能有精度损失 ![在这里插入图片描述](htt原创 2022-01-18 19:30:12 · 296 阅读 · 0 评论 -
基本数据类型转换规则
基本数据类型转换规则前言一、 byte、short、char运算的规则二. 多种数据类型混合运算规则三、总结前言 在这篇文章中,我对Java的基本类型数据类型的混合运算做了一些总结,希望可以帮到大家 一、 byte、short、char运算的规则这几个类型的变量在做运算的时候,先各自转换成int类型再进行运算代码如下(示例):char c='a';byte b=1;short s=c+b; 报错:不兼容的类型,从int转换到short可能会有损失有+,编译器只能检测到...原创 2022-01-18 19:26:35 · 1588 阅读 · 0 评论 -
Java异常处理
java 异常的了解前言一、异常的认识1.异常的体系结构2.常见的异常二、异常的处理:抓抛模型2.1 “抛”2.2"抓"三、异常的处理方式3.1 方式一: try-catch-finally3.1.1使用方式3.1.2 注意点3.2 方式二:throws3.3 两种异常处理方式的选择3.4 如何自定义异常类3.5 throw和throws关键字的区别总结前言 编写程序时,经常要在可能出现的错误的地方加上检测代码,过多的分支会导致程序的代码加长臃肿,可读性差,所以才采用异常的处理原创 2022-01-14 16:35:23 · 486 阅读 · 0 评论