java自学历程
以博客的形式记录自己java的学习历程,强化记忆知识点
M.j.fast
这个作者很懒,什么都没留下…
展开
-
java自学随笔 - 快速排序详解
快速排序快速排序是一种高效率的排序,通过对一组无序数组,任意的抽出一个数作为基准值,使得所有比它小的在他的左边/右边,比他大的数在它的右边/左边。在学习java数组的相关知识的时候,一定会接触的到的重要算法。记得最开始的时候,学习冒泡的时候很难,但是理解之后感觉冒泡排序和后面学到的选择排序相对来说是比较"老实"的算法,每次交换没有快排的跳跃度大,所以也是查找了不少资料和相关视频来弄懂这个算法,接下来会以最详细的方式来解读快速排序算法。基本思路在一组无序的数组内,我们可以任意抽出一个元素,将他记录为基准原创 2020-05-17 15:52:48 · 350 阅读 · 0 评论 -
Java自学随笔 - 冒泡排序详解
1.冒泡排序冒泡排序是一种尤为经典的且稳定的排序算法,从首位元素为起点,与后面的元素进行交换,符合预设条件的则记性位置交换,不符合的则不会交换,只要通过第一轮的比较,就一定末尾元素在后面的比较中不会再参与比较。冒泡排序:通过画图来理解冒泡的排序的原理和过程如图:可以发现当,前一个数<后面一个数时,则会进行交换也就是Array[i]<Array[i+1], 两个数的值在数组位置中进行互换当第一次比较完毕之后,第二次比较时,会去比较后面一个数和更后面的的数,也就是比较的位置整体往后移原创 2020-05-17 13:44:38 · 280 阅读 · 0 评论 -
Java自学随笔 - Object类 - toString()和equals()
什么是Object类?这个类是java中所有类的父类,任何一个类都会去默认继承object中的方法,就算没有直接继承,最终也会间接继承。常用Object类中的方法,如何寻找?方式一:去源码中查找。方式二:去查阅java的类库的帮助文档。记录几个常用的方法:...原创 2020-04-19 23:26:41 · 311 阅读 · 0 评论 -
Java自学随笔 - 抽象类
抽象类1.什么是抽象类?类和类之间具有共同特征,并将这些特征提取出来,形成的就是抽象类。类本身是抽象概念不是具象概念,所以不存在,所以抽象类无法创建对象,也就无法实例化对象。2.抽象类是属于什么样的数据类型?抽象类也是引用数据类型。3.抽象类如何定义?语法:[修饰符列表] abstract class 类名{类体;}4.由于抽象类是无法进行实例化的,所以抽象类是用来被继承的5...原创 2020-04-10 22:43:18 · 96 阅读 · 0 评论 -
Java自学随笔 - fianl修饰符
什么是final1.final是java语言中的一个关键字2.final表示最终的,不可变的3.final可以修饰变量,方法,类被final修饰的类不可被继承被fianl修饰的方法无法被覆盖,被重写被fianl修饰的局部变量,一旦被赋值了,则再不能赋值。4.如果变量是一个"引用"被fianl修饰了,那么会如何呢?那么这个引用中保存的变量则再也不能更改,如果再次新创建一个对象并将...原创 2020-04-10 22:41:41 · 124 阅读 · 0 评论 -
Java自学随笔 - 从一个小需求来看看多态的实际应用
多态在需求中的实际应用需求:主人喂养宠物,使用java程序来实现这个场景。分析:主人可以抽象成一个类,而喂食这一动作也是在这个场景中主人拥有的。同时也需要知道,去喂养哪种宠物。宠物也可以抽象成一个类,而吃这一动作也是在这个场景宠物才拥有的。那么我们就可以根据需求开始编写的代码:分别写了一个Master类,Cat类,测试类。最后得出的结果就是小猫在吃鱼,整体结果没有问题,但是整个...原创 2020-04-06 23:47:23 · 226 阅读 · 0 评论 -
Java自学随笔 - 多态
什么是多态?概念:因编译期间状态和运行期间状态不一致,父类型的引用可以指向子类型的对象,让程序产生了多种形态的概念。对于多态还有以下相关知识点:(1) 向上转型:也就是由子类型向父类型转换,也可以理解成自动类型转换,名称为upcasting(2) 向下转型:也就是由父类型向子类型转换,也可以理解成为强制类型转换,需要加强制类型转换运算符。上述两种类型转换必须要有父子继承关系,才能完成向上...原创 2020-04-06 23:05:20 · 129 阅读 · 0 评论 -
Java自学随笔 - static关键字
关于java中的static关键字:1.static修饰的方法是静态方法。2.static修饰的变量是静态变量。3.所有static修饰的元素都会成为静态,都可以使用"类名.变量名"的方法来访问。4.静态变量是属于类级别的特征,可以成为这个类的通用属性(特征),也就意味着访问该变量再不能...原创 2020-03-31 22:40:26 · 105 阅读 · 0 评论 -
Java自学随笔 - 创建对象使用时的内存分析随笔1
对象通过类中自带的构造方法类创建(此处不详细展开)那么在创建对象的过程中,对象去访问成员变量,jvm又发生了哪些变化呢?此处通过代码和画图的形式来详解code图:实际完整code:class husband{ String name; wife w;}class wife{ String name; husband h;}public class...原创 2020-03-15 16:00:20 · 191 阅读 · 0 评论 -
Java自学随笔 - 构造方法
构造方法:关于java类中的构造方法:1.构造方法又被成为构造器或者构造函数2.构造方法语法结构:[权限修饰符] 构造方法名(形参){方法体}3.回顾一下普通方法的语法结构:[权限修饰符] 返回值类型 方法名(形参){方法体}4.对于构造方法来说,"返回值类型"不需要指定,并且也不能写void,例如你不能写返回类型是int,String之类的。如果写上了void,那么这个方法就成为了...原创 2020-03-08 22:47:45 · 204 阅读 · 0 评论 -
Java自学随笔 - this关键字
关键字的作用:1.this可以访问类本身中的属性。2.this可以调用类本身中的方法。3.this可以调用本类中其他的构造方法。上一段代码可以使得概念更为清楚:输出结果:可以发现,我们在用对象的引用P去调用Person类中的Sayhello方法,并且传参为"456",然后后面的name输出的值,是由P.name = “123”;早就定义好的,这个没什么问题。但是在很多实际开发过程中...原创 2020-03-07 20:45:48 · 194 阅读 · 0 评论 -
Java自学随笔 - 类的封装
目的提高数据安全性,通过封装,可以实现对属性的访问权限的控,同时增加了程序的可维护性。将属性私有化,使用private关键字完成私有化,这种属性只有本类可以直接访问我们一般对每一个私有属性提供public的set和get这一对方法,供外界来访问我们的私有属性。代码如下class Girl{ private String name; private int age; ...原创 2020-03-06 22:03:02 · 111 阅读 · 0 评论 -
Java自学随笔 - 局部变量和成员变量
局部变量局部变量是定义在方法中或语句块中。作用范围:只限于所定义的大括号。存储的位置:存储在栈内存中。默认值:无,局部变量必须赋值。生命周期:所属的大括号结束就消失。成员变量成员变量是定义在类中,也可以叫类的属性。出了成员变量其余的都是局部变量。成员变量的特点:作用域:根据权限修饰符来定存储位置:堆内存或者数据共享区默认值:有生命周期:又jvm通过垃圾回收机制来自动回收。...原创 2020-03-06 20:44:25 · 138 阅读 · 0 评论 -
Java自学随笔 - 类,对象,方法
Part 1类是事物的抽象结果,对象是抽象结果的具象化实例。类的语法:class Demo{ //属性 //方法名}//类名命名规则,首字母大写,驼峰式,见名知意.//创建类时,类名和文件名无关系,前提无权限修饰符public如果出现类名前面有public,则注意该类名对应的.class文件名必须一致。单个.class文件中只能有一个主类,只能有一个public权限修饰符/...原创 2020-03-05 15:46:03 · 124 阅读 · 0 评论 -
Java自学随笔 - 关于数组概念理解
Part - 11.基本数据类型的变量都储存在占中,栈的特点是存储空间小,但是存取速度快,遵循先进后出。2.引用数据类型所占的空间比较大,存储在堆中,堆的特点是存储空间小,但是存取速度相对于栈较慢。3.arr是数组类型变量(如果是引用数据类型,则一般叫做引用),new int[8]真正的数据是储存在堆中,新创建的数据的每一个位置的值都为数组类型的默认值。数组的索引是从0开始。数组的...原创 2020-03-04 21:11:59 · 228 阅读 · 0 评论 -
Java自学随笔 - 关于方法(函数)的相关知识点泛记
概述:方法(函数)是一能够完成独立功能的代码块,我们只需要写一次方法就可以被多次使用,从而提高了代码的复用性。1.方法如何被调用?方法名(参数值1,参数值2);例:/*方法名写的意义明确,即可见名知意如下面这个方法就能基本知道,这是一个数字比较的方法,同时传入a,b两个参数*/NumCompare(a,b);2.调用一个方法需要注意什么?当调用某一个方法时,需要查看方法是否有v...原创 2020-03-02 22:52:34 · 144 阅读 · 0 评论