Java基础
文章平均质量分 64
_路漫漫其修远
这个作者很懒,什么都没留下…
展开
-
==与equals、自动装箱、String类型相关
目录==和EQUALS的区别?装箱与拆箱自动装箱:自动拆箱:STRING类型相关创建字符串拼接String字符串StringBuilder如何添加新字符==和EQUALS的区别?equals:比较两个引用类型的地址(有重写的特殊情况)== :比较两个基本数据类型的值,比较两个引用类型的地址1、基本数据类型== 比较的是值2、普通引用类型没有重写equals方法,自动继承的Object类的方法,比较地址。== 和 equals比较的都是地址原创 2022-02-27 22:29:51 · 222 阅读 · 0 评论 -
反序列化时遇到报错 java.io.EOFException
遇到报错的代码是ObjectInputStream ois=new ObjectInputStream(new BufferedInputStream(new FileInputStream("a.ser")));也就是说在创建该流的时候发生了错误,调试后发现是因为在同一个java代码中,将对象序列化了之后没有立刻关闭序列化流即:ObjectOutputStream oos=new ObjectOutputStream(new BufferedOutputStream(new FileOut原创 2021-07-23 09:29:49 · 997 阅读 · 0 评论 -
Java语法进阶(1)——容器
1、概念容器用于装其他对象的对象。数组是一种简单的容器,优点:效率高、速度快,缺点:使用不够灵活,不能扩容,因此需要功能更加强大的容器,如下容器(集合)接口。2、Collection集合的常用操作基础方法:remove()方法,仅移除容器中记录的对象的地址,并不是删除对象本身,新手容易犯错。clear()方法,移除容器的所有内容。toArray()方法,转化为一个object数组。contains()方法,检查是否包含某个对象。两个集合的方法:removeAl原创 2020-12-07 19:12:13 · 213 阅读 · 0 评论 -
Java语法基础(3)——基础语法中的重难点
1、Java中List和ArrayList的区别List是一个接口,而ArrayList是List接口的一个实现类。ArrayList类继承并实现了List接口。接口和抽象不能被实例化,所以List接口不能被构造(不能创建实例对象),但是可以创建一个对象引用指向继承该接口从而实现面向对象编程中的多态。为什么要用 List list = new ArrayList() ,而不用 ArrayList alist = new ArrayList()呢?问题就在于List接口有多个实现类,现在你用的..原创 2020-11-28 09:44:21 · 200 阅读 · 0 评论 -
Java语法基础(2)——Java内存中的栈与堆
Java把内存分成两种,一种叫做栈内存,一种叫做堆内存。 在函数中定义的一些基本类型的变量和对象的引用变量都是在函数的栈内存中分配。当在一段代码块中定义一个变量时,java就在栈中为这个变量分配内存空间,当超过变量的作用域后,java会自动释放掉为该变量分配的内存空间,该内存空间可以立刻被另作他用。 堆内存用于存放由new创建的对象和数组。在堆中分配的内存,由java虚拟机自动垃圾回收器来管理。在堆中产生了一个数组或者对象后,还可以在栈中定义一个特殊的变量,这个变量的取值等于数组或者对象在堆内存转载 2020-11-24 17:10:57 · 161 阅读 · 0 评论 -
Java语法基础(1)——Java中的引用
关于值类型和引用类型的话题,C++、JAVA、python、go、C#等等高级语言都有相关的概念,只要理解了其底层工作原理,可以说即使是不同的语言,在面试学习工作实践中都可以信手拈来(不要太纠集语言),当然此处我选择了JAVA,虽然我是搞C++的,具体原因都懂就不废话了。一、值类型与引用类型 1、变量初始化int num=10;String str="hello" 2、变量赋值 从上图可以显而易见,num是int基本类型变量,值就直接保存在变量中。str是String引用.转载 2020-11-21 22:12:58 · 197 阅读 · 0 评论