![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java基础
文章平均质量分 89
爱海贼的小码农
做任何事,不要急躁,要慢慢沉淀自己。
展开
-
浅谈类的加载机制
类的加载机制我们知道,编译的过程是将java文件转换成class文件,也就是说我们在使用的时候,还是需要将class文件加载到我们的内存中我们才能使用的,这个过程就是类的加载机制,很多人会把这个知识点忽略掉,但是这个是非常重要的知识点,有助于我们去更深层次的学习java虚拟机的一些知识。今天我们就来学习一下类的加载机制。类的加载机制的定义:虚拟机把描述类的数据从class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的java类型,这就是java虚拟机的加载机制。类原创 2022-02-16 10:20:15 · 705 阅读 · 0 评论 -
java中的垃圾回收算法
java中的垃圾回收算法 今天来讲讲java中的垃圾回收机制,要了解垃圾回收机制,我们就要先了解java堆,它的实现是什么。java堆的实现: 在java中堆的实现像一个传送带,每分配一个新的对象,它就向前移动一格。这就意味着对象存储空间的分配非常的快,java的“堆指针”只是简单的移动到尚未分配的区域。 但是java堆未必完全像上面将的那样工作,因为如果真的是那样的话,一定会导致频繁的内存页面调度——将其移进移出硬盘,页面调度会影响性能,最终在创建足够多的对象之后,内存耗尽。因为java中有原创 2022-02-14 16:10:47 · 5331 阅读 · 0 评论 -
java运行时数据区域
java运行时数据区域java虚拟机在执行java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。 这些区域每一个都有自己的用途。java虚拟机所管理的内存包括以下几个运行时数据区域。程序计数器程序计数器是一块较小的内存空间,它可以看作是当前线程所执行的字节码的行号指示器。在虚拟机的概念模型例,字节码解释器工作时就是通过改变这个计数器的值来选取下一条需要执行的字节码指令,分支、循环、跳转、异常处理、线程恢复等功能都需要以来这个计数器完成。由于java虚拟机的多线程是通过线程轮流切换并分配原创 2021-11-18 09:43:21 · 660 阅读 · 0 评论 -
java面试基础之equals、hashcode()与==
基本数据类型:当一个基本数据类型变量在方法中声明,那么它的变量名和值都是存在栈中的。对于基本数据类型来说==比较的是值。当一个基本数据类型变量在方法中声明,那么它的变量名和值都是存在堆中的。引用类型:当他们用(==)进行比较的时候,比较的是他们在内存中的存放地址,所以,除非是同一个new出来的对象,他们的比较后的结果为true,否则比较后结果为false。对象是放在堆中的...原创 2019-05-18 23:37:02 · 268 阅读 · 0 评论 -
String,StringBuffer,StringBuilder区别
初了解:String是字符串常量,是不可改变的,对该字符串操作都会产生一个新的字符串常量。StringBuffer和StringBuilder(JDK5.0之后)是字符串变量,每次操作是对本身的字符串操作,前者是线程安全,后者是线程不安全,由这点可以知道,前者的效率会比后者的效率低。详细解析:String:由于每次String是不可变对象,因此每一次都会操作都会产生新的S...原创 2019-05-19 14:42:46 · 186 阅读 · 0 评论 -
java类的三大特性——封装,继承,多态
在类内部,对于成员变量,如果在定义的时候没有进行显示的赋值初始化,则Java会保证类的每个成员变量都得到恰当的初始化:对于 char、short、byte、int、long、float、double等基本数据类型的变量来说会默认初始化为0(boolean变量默认会被初始化为false); 对于引用类型的变量,会默认初始化为null。如果没有显示地定义构造器,则编译器会自动创建一个无参构造...原创 2019-05-18 00:06:35 · 320 阅读 · 0 评论 -
java内部类
内部类:在一个类中定义另一个类。内部类的共性(1)内部类仍然是一个独立的类,在编译之后内部类会被编译成独立的.class文件,但是前面冠以外部类的类名和$符号 。(2)内部类不能用普通的方式访问。(3)内部类声明成静态的,就不能随便的访问外部类的成员变量了,此时内部类只能访问外部类的静态成员变量 。(4)外部类不能直接访问内部类的的成员,但可以通过内部类对象来访问四种...原创 2019-05-18 10:13:25 · 175 阅读 · 0 评论 -
java基础——抽象方法,抽象类和接口
一、抽象方法有关键字abstract修饰的方法是抽象方法。这类方法没有方法体。二、抽象类含有抽象方法的类是抽象类。如果一个类含有抽象方法,但是不声明为抽象类,那么会编译出错。注意:1.因为抽象类中含有无具体实现的方法,所以不能用抽象类创建对象。如果使用抽象类创建对象就要实现里面的抽象方法。2.类中抽象方法必须为public或者protected(因为如果为pri...原创 2019-08-08 16:40:35 · 214 阅读 · 0 评论