![](https://img-blog.csdnimg.cn/20190927151101105.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
Java基础
文章平均质量分 71
Java基础
好似是故人
这个作者很懒,什么都没留下…
展开
-
第一章 初识Java
JVM是Java Virtual Machine(Java虚拟机)的缩写,它是整个java实现跨平台的最核心的部分,所有的java程序会首先被编译为.class的类文件,这种类文件可以在虚拟机上执行,也就是说class并不直接与机器的操作系统相对应,而是经过虚拟机间接与操作系统交互,由虚拟机将程序解释给本地系统执行。JVM是Java平台的基础,和实际的机器一样,它也有自己的指令集,并且在运行时操作不同的内存区域。原创 2023-04-03 20:18:14 · 97 阅读 · 1 评论 -
第二章 数据类型和运算符 (常识)
数值型整数型byte1short2int4long8浮点型float4double8布尔型boolean1字符型char2共同点:1、i++和++i都是变量自增1,都等价于i=i+12、如果i++,++i是一条单独的语句,两者没有任何区别3、i++和++i的使用仅仅针对变量。5++和++5会报错,因为5不是变量。不同点:如果i++,++i不是一条单独的语句,他们就有区别1、 i++ :先运算后增1。如:2、++i : 先增1后运算。原创 2023-04-03 20:37:19 · 32 阅读 · 0 评论 -
第三章 流程控制
递归算法是一种直接或者间接地调用自身算法的过程。在计算机编写程序中,递归算法对解决一大类问题是十分有效的,它往往使算法的描述简洁而且易于理解。递归算法解决问题的特点:(1) 递归就是在过程或函数里调用自身。(2) 在使用递归策略时,必须有一个明确的递归结束条件,称为递归出口。(3) 递归算法解题通常显得很简洁,但运行效率较低。所以一般不提倡用递归算法设计程序。(4) 在递归调用的过程当中系统为每一层的返回点、局部量等开辟了栈来存储。递归次数过多容易造成栈溢出等。所以一般不提倡用递归算法设计程序。原创 2023-04-03 20:50:52 · 61 阅读 · 0 评论 -
第四章 数组
3.实参不同 可变参数实参可以0,1,2.....个,也可以是一个。2.位置不同 可变参数只能是最后一个 数组参数位置任意。3.可变参数对应的实参可以0,1,2.....个,也可以是一个数组。7.如果定义了可变参数的方法,不允许同时定义相同类型数组参数的方法。1.个数不同 可变参数只能有一个 数组参数可以多个。4.在可变参数的方法中,将可变参数当做数组来处理。5.可变参数最多有一个,只能是最后一个。2.可变参数只能是方法的形参。总结2:数组做形参和可变参数做形参联系和区别。数组,数组的实参只能是数组。原创 2023-04-03 21:00:59 · 36 阅读 · 0 评论 -
第五章 面向对象之一
小明就是一个具体的人,也就是实例,他的属性是具体的身高200cm,体重180kg,他做的方法是具体的吃了一碗白米饭,说了“12345”这样一句话。1、编程思路不同: 面向过程以实现功能的函数开发为主,而面向对象要首先抽象出类、属性及其方法,然后通过实例化类、执行方法来完成功能。类是抽象的,不占用内存,而对象是具体的,占用存储空间。2、封装性:都具有封装性,但是面向过程是封装的是功能,而面向对象封装的是数据和功能。是用于创建对象的蓝图,它是一个定义包括在特定类型的对象中的方法和变量的软件模板。原创 2023-04-03 21:21:08 · 33 阅读 · 0 评论 -
第五章 面向对象之二
final和abstract是功能相反的两个关键字,可以对比记忆1、abstract可以用来修饰类和方法,不能用来修饰属性和构造方法;使用abstract修饰的类是抽象类,需要被继承,使用abstract修饰的方法是抽象方法,需要子类被重写。2、final可以用来修饰类、方法和属性,不能修饰构造方法。使用final修饰的类不能被继承,使用final修饰的方法不能被重写,使用final修饰的变量的值不能被修改,所以就成了常量。3、特别注意:final修饰基本类型变量,其值不能改变。原创 2023-04-03 21:32:43 · 32 阅读 · 0 评论 -
第五章 面向对象之三
1.public boolean equals(java.lang.Object) 比较内容2.public native int hashCode() 哈希码3.public java.lang.String toString() 变成字符串4.public final native java.lang.Class getClass() 获取类结构信息5.protected void finalize() throws java.lang.Throwable 垃圾回收前执行的方法。原创 2023-04-03 21:41:02 · 29 阅读 · 0 评论 -
第五章 面向对象之四
1、抽象类体现了一种继承关系,目的是复用代码,抽象类中定义了各个子类的相同代码,可以认为父类是一个实现了部分功能的“中间产品”,而子类是“最终产品”。6、垃圾回收机制回收任何对象之前,总会先调用它的finalize方法(如果覆盖该方法,让一个新的引用变量重新引用该对象,则会重新激活对象)。3、抽象类中可以有构造方法,但不能用来实例化,而在子类实例化是执行,完成属于抽象类的初始化操作。1、将一个指向子类对象的引用赋给一个子类的引用,成为向下转型,此时必须进行强制类型转换。抽象类中可以定义常量和变量。原创 2023-04-03 21:51:55 · 32 阅读 · 0 评论 -
面向对象之方法的重写和重载
重载与重写的区别原创 2023-03-17 17:50:06 · 283 阅读 · 1 评论 -
第六章 异常处理(常识)
如果try语句出现异常,则中断执行并根据发生的异常类型跳至相应的catch语句块执行处理。finally语句是可选的,如果有的话,则不管是否发生异常,finally语句都会被执行。2、Checked异常(非运行时异常):除了运行时异常外的其他异常类都是Checked异常。1、Error类,表示仅靠程序本身无法恢复的严重错误,比如说内存溢出、动态链接异常、虚拟机错误。2、Exception类,由Java应用程序抛出和处理的非严重错误,比如所需文件没有找到、零作除数,数组下标越界等。原创 2023-04-03 22:02:29 · 46 阅读 · 0 评论 -
第七章 常用工具类之一
这个类就像一个工具一样,类的提供者给我们提供了, 就希望我们直接用就完了,不想让我们随便能改,其实说白了还是安全性, 如果随便能改了,那么java编写的程序肯定就很不稳定,你可以保证自己不乱改, 但是将来一个项目好多人来做,管不了别人,再说有时候万一疏忽了呢?在JSP开发中,Integer的默认为null,所以用el表达式在文本框中显示时,值为空白字符串,而int默认的默认值为0,所以用el表达式在文本框中显示时,结果为0,所以,int不适合作为web层的表单数据的类型。原创 2023-04-03 22:06:07 · 82 阅读 · 0 评论 -
第七章 常用工具类之二
在开发一个系统的时候,我们有时候也需要设计不可变类,来传递一组相关的值,这也是面向对象思想的体现。后者每次都会调用构造器,生成新对象,性能低下且内存开销大,并且没有意义,因为String对象不可改变,所以对于内容相同的字符串,只要一个String对象来表示就可以了。第一条语句打印的结果为false,第二条语句打印的结果为true,这说明javac编译可以对字符串常量直接相加的表达式进行优化,不必要等到运行期去进行加法运算处理,而是在编译时去掉其中的加号,直接将其编译成一个这些常量相连的结果。原创 2023-04-04 08:08:31 · 45 阅读 · 0 评论 -
JAVA基础知识汇总(思维导图)
JAVA基础知识汇总(思维导图)链接:https://pan.baidu.com/s/1UPSYzjkhosphzMtBQYuPkg提取码:bodv原创 2021-08-28 11:46:36 · 396 阅读 · 0 评论