JAVA学习笔记
要加油呀~^O^
在校就读生,希望CSDN这平台可以记录下我在学习计算机路程上的点点滴滴,以此见证我的成长。
展开
-
Java的异常处理机制知识点【笔记详细】
目录标题1初始异常1.1什么是异常?1.2异常引例1.3执行结果1.3.1结果展示1.3.2结果说明2初始异常2.1异常类创建异常对象2.2代码展示2.3执行结果3运行时异常编写程序时可以不处理3.1代码展示3.2执行结果4方法声明位置上使用throws【方法一】4.1代码展示4.2执行结果5try...catch捕捉异常5.1代码展示5.2执行结果6异常处理的原理6.16.2执行结果7深入try...catch7.1代码展示7.1执行结果8异常对象的两个非常重要的方法8.18.2三级目录1初始异常二级目录原创 2020-06-27 14:16:23 · 1189 阅读 · 0 评论 -
Java中StringBufferr和StringBuilder字符串拼接【学习笔记详细】
目录标题1.StringBuffer和StringBuilder1.1概述1.2 普通字符串拼接与StringBuffer(StringBuilder)的区别1.2.StringBuffer2.1代码展示1.2执行结果1.2.StringBuilder2.1代码展示2.2执行结果1.StringBuffer和StringBuilder1.1概述思考:我们在实际的开发中,如果需要进行字符的频繁拼接,会有什么问题?因为java中的字符串是不可变的,每一次拼接都会产生新的字符串。这样会占用大量的方法区原创 2020-06-25 18:02:40 · 366 阅读 · 0 评论 -
Java中String知识点总结【上课笔记详细】
目录标题1字符串的存储原理1.1String的理解1.2代码展示1.3内存原理图三级目录22.12.2内存原理图三级目录一级目录二级目录三级目录一级目录二级目录三级目录一级目录二级目录三级目录一级目录二级目录三级目录一级目录二级目录三级目录一级目录二级目录三级目录一级目录二级目录三级目录1字符串的存储原理1.1String的理解关于Java JDK中内置的一个类:java.lang.String1.String表示字符串类型,属于引用数据类型,不属于基本数据类型2.在java中随便使用双引号括起来原创 2020-06-25 16:56:04 · 895 阅读 · 0 评论 -
Java中一维数组知识点【上课笔记详细】
一.知识点概述1.一维数组的取、存和遍历1.1代码展示1.2执行结果1.3内存结构图展示2.初始化一位数组2.1代码展示2.2执行结果2.3内存结构图展示3.方法的参数是数组(1)3.1代码展示3.2执行结果4.方法的参数是数组(2)4.1代码展示4.2执行结果/*Array1、Java语言中的数据是一种引用数据类型,不属于基本数据类型。数组的父类是Object2、数据实际上是一个容器,可以同时容纳多个元素(元素是一个数据的集合。)数组:字面意思是:一组数据3、数据当原创 2020-06-24 22:47:35 · 935 阅读 · 0 评论 -
Java异常作业小小案例
目录标题题目1自定义异常类IllegalNameException2用户类UserServise2.1使用异常类前后对比2.2完整代码如下3测试类Test4运行结果(1)Username处传入jacklucy(2)Username处传入jack题目编写程序模拟用户注册:1.程序开始执行时,提示用户输入“用户名”和“密码”信息2.输入信息之后,后台java程序模拟用户注册3.注册时用户名要求在(6–14)之间,小于或者打羽都表示异常注意:完成注册的方法放到一个单独的类中。异常类自定义即可。p原创 2020-06-24 18:56:07 · 449 阅读 · 0 评论 -
Java数组实现压栈弹栈操作【基础版】
这里写目录标题要求:1定义属性1.1定义Object类型一维数组1.2栈帧,永远指向栈部元素2压栈2.1(1)和(2)本质上一样,注意分清楚是先自加1,在赋值2.2注意:所有的System.out.println()方法执行时,如果输出饮用的话,自动调用引用的toString()方法2.3完整压栈代码2.4测试结果3弹栈4完整代码4.1栈类4.2测试类4.3执行结果要求:1.栈可以存储java中的任何引用类型的数据2。在这个栈中提供push方法模拟压栈(栈满了,要有提示信息)3.在栈中提供给pop方原创 2020-06-23 16:13:15 · 1076 阅读 · 0 评论 -
Java二维数组详细【上课笔记】
文章目录前言1.二维数组的length属性1.1代码展示1.2执行结果2.二维数组的元素访问2.1知识点2.2代码展示2.3执行结果3.遍历二维数组3.1核心代码3.1完整代码展示3.3执行结果4.方法的参数是一个二维数组4.1核心代码4.2完整代码展示4.3执行结果前言关于java中的二维数组1、二维数组其实是一个特殊的一位数组,特殊在这个一位数组当中的每一个元素是一个以为数组2、三叔数组是什么?三维数组是一个特殊的二维数组。特殊在这个二维数组中每一个元素是一个以为数组实际的开发中使用最多的原创 2020-06-23 14:42:35 · 408 阅读 · 0 评论 -
JavaSE匿名内部类详解
/*匿名内部类:1、什么内部类?内部类:再累的内部有定义一个新的类,被称为内部类2、内部类的分类?静态内部类:类似于静态变量示例内部类:类似于实例变量局部内部类:类似于局部变量3、使用内部类编写的代码可读性太差,能不用尽量不用。4、局部内部类是局部内部类的一种以为内这个类没有名字5、不建议使用匿名类,为什么?因为一个类没有名字,没办法重复使用。另外 代码太乱,可读性太差。*/class Test01{ //静态内部类 static class Inner1{ }原创 2020-06-22 19:55:34 · 274 阅读 · 0 评论 -
JavaSE中Object类equals方法
1、equals方法重点源代码?public boolean equals(Object obj){return (this == obj);}以上这个方法是Object类的默认实现2、SUN公司设计equals方法的目的是什么?以后变成的过程当中,都要通过equals方法判断两个对象是否相等equals方法是判断两个对象是否相等的3.我们需要研究一下Object类给的这个默认的equals方法够不够用!!!(保存的内存地址是否相等)在Object类中的equals方法当中,默认采用的是“原创 2020-06-22 17:52:03 · 229 阅读 · 0 评论 -
关于java语言当中的包机制
/* 关于java语言当中的包机制: 1、包又称为package,java中引入package这种语法机制只要是为了方便程序的管理。 不同功能的类被分门别类放在不同的软件当中,查找比较方便,管理比较方便,易维护 2、怎么定义package呢? - 在java源程序的第一行上边写package语句 - package只能编写一个语句 - 语法结构: package 包名; 3、包名的命名规范: 公司域名倒叙 + 项目名 + 模块名 + 功原创 2020-06-22 09:31:18 · 176 阅读 · 0 评论 -
Java中抽象类abstract的语法
抽象类1、什么是抽象类?雷雨类之间具有共同特征,讲这些共同特征提取出来,形成的就是抽象类。泪奔设施不存在的,所以抽象类无法创建对象(无法实例化)2、抽象类属于什么类型?抽象类与属于引用数据类型3、抽象类怎么定义?语法:【修饰符列表】 abstract class 类名{ 类体;}4、抽象类是无法实例化的,无法创建对象的,所以抽象类是用来被子类继承的5、abstract 与final 不能联合使用,这两个关键字是对立的6、抽象类的之类可以是抽象类,也可以是非抽象类7、抽原创 2020-06-21 15:37:50 · 315 阅读 · 0 评论 -
IDEA中的实用的快捷键
快捷键的重要性不言而喻,可以大大提高我们的学习和工作效率。记得在大一原专业的时候,大一第一学期学习PS的时候,那时候PS是其中一门专业课,老师在课程的开始就让我们把PS中的大量的快捷键背下来,我们只好乖乖的背下来,后来发现背下来快捷键真的在后期应用时会快很多。之后我就一直比较注重快捷键的使用。以下就是我学习到的和搜集到的,由于我也是干刚开始学习,后期我会一直对其进行补充。Esc IDEA中退出任何窗口,都可以使用esc键盘Alt + insert (提醒如果不是全键盘,Alt+Fn+I原创 2020-06-19 22:03:12 · 125 阅读 · 0 评论 -
Java中super关键字【学习笔记三】
引用文本/*1."this."和“super.”打不通分情况下是可以省略的2.this.什么时候不能省略?public void setName(String name){this.name = name;}3.super.什么时候不能省略?父中有,子中也有,如果想在子中访问“父的特征”,super不能省略。*/一、1.代码解析:创建Vip类对象zhangsan,接着执行VIP的有参构造函数,Vip是继承Cusyomer的,且因为name在父类中声明时没有限制访问控制符,由于Ja.原创 2020-06-18 22:17:56 · 196 阅读 · 0 评论 -
Java中super关键字【学习笔记二】
/*1.举个例子,在恰当的时间使用:super(实际参数列表):2.注意:在构造方法执行过程中一连串调用父类的构造方法,父类的构造方法又继续向下调用它的父类的构造方法,但是实际上对象只创建了一个3.思考:“super”(实参)到底是干啥的?super(实参)的作用是:初始化当前对象的父类型特征。并不是创建对象。实际上对象只创建了一个4.super关键字代表什么?super关键字代表的就是“当前对象”的那部分父类型特征。*/代码解析:这里创建了两个对象分别是ca1和ca2,分别调原创 2020-06-18 15:39:40 · 140 阅读 · 0 评论 -
Java中super关键字【学习笔记一】
/*1、super是一个关键字,全部小写。2、super和this对比着学习 this: this能出现在实例方法和构造方法中 this的语法是: “this.”、"this()" this不能使用在静态方法中 this.大部分情况是可以省略的 this.什么时候不能省略呢?在区分局部变量和实例变量的时候不能省略 public void setName(String name){ this.name = name; } this()智能出现在构造方法第一行原创 2020-06-18 15:01:40 · 116 阅读 · 0 评论 -
Java中修饰符访问权限控制符号public、protected、缺省和private
* public 表示公开的,在任何位置都可以访问 * protected 同包,子类 * 缺省 同包 * private 表示私有的,只能在本类中访问原创 2020-06-16 17:16:50 · 1356 阅读 · 0 评论 -
方法重载与方法覆盖(重写)比较
方法重载回顾java中方法的重载:1、方法重载又叫 overload2、什么时候 考虑用方法重载?功能相似的时候,尽可能让方法名相同3、什么条件下构成了方法重载?—在同一个类中—方法名相同—参数列表不同:{数量不同、顺序不同、类型不同};4、方法重载和什么有关系,合适吗没有关系?——方法重载和方法名+参数列表 有关系**——方法重载与返回值类型没有关系——方法重载和修饰符列表无关方法覆盖1、方法覆盖又被称为方法重写2、什么时候使用方法重写?当父类中的方法已经无法满足当前子类原创 2020-06-11 11:27:17 · 170 阅读 · 0 评论 -
JAVA中的继承的含义以及使用方法
关于java语言当中的继承: * 1、集成式面向独享的三大特征之一,三大特征分别是:封装、集成、多台 * 2、继承“基本”的作用是:代码复用。但是继承是“重要”的作用是:有了继承才有了以后“方法的覆盖”和“多态机制”。 * 3、继承语法格式: * 【修饰符列表】 class 类名 extends 父类名{ * 父类 = 属性 + 方法 * } * 4、java语言当中的继承只支持单继承,一个类不能同时继承多累,智能继承一个类。在c++中支持多继承。原创 2020-06-11 10:16:19 · 550 阅读 · 0 评论 -
this指针含义之内存原理图展示
readInt是输入流bai中的读取下一个整du数的意思1.代码如下:在这里插入代码片2.执行结果如下:3.内存原理图如下:原创 2020-06-11 09:25:25 · 383 阅读 · 0 评论 -
this指针深层次理解之你真的掌握static的用法了吗?
使用方法总结package com.bjpowernode.javase.day09.test003;public class Test { //没有static的变量 int i = 10; //带有static的方法 public static void doSome(){ System.out.println("do some!"); }; //没有static的方法 public void doOther(){ System.out.println("do原创 2020-06-11 08:49:51 · 136 阅读 · 0 评论 -
静态语句与实例代码块的执行顺序【不常用但要了解的知识点】
2静态代码块1.1静态代码快可以使用static关键字来定义“静态代码块” * 1.语法格式: * static{ * java语句; * } * 2.静态代码在类加载的时候执行,并且只执行一次 * 3.静态代码块在一个类中可以编写多个,并且遵循自上而下的顺序依次执行 * 4.静态代码的作用是什么?怎么用?在哪用?什么时候用? * ------这当然和具体的需求有关,例如项目中要求在类加载到时刻/时机执行代码完成日止的记录 * 那么这段记录日志的代码就可以编写到静原创 2020-06-11 08:03:25 · 186 阅读 · 0 评论 -
JAVA中static关键字理解【笔记一】
关于java中的static关键字? * 1.static英语单词翻译为静态的 * 2.static修饰的方法是静态变量 * 3.static修饰的变量是静态变量 * 4.所有static修饰的元素都称为静态的,都可以使用“类名.”的方式访问, 当然也可以用引用.的方式访问【但不建议】 * 5.static修饰的都是类级别的特征,和具体的对象无关 * 1.什么时候成员变量声明为实例变量呢? * 所有对象都有这个属性,但是这个属性的值会随着对象的变化而变化【不同对象的这个属性具体的值不同】.原创 2020-06-10 18:25:09 · 117 阅读 · 0 评论 -
关于myeclipse中常用的部分快捷键,myeclipse中刚开始使用注意事项
★关于myeclipse中常用的部分快捷键:一ctrl +d删除一行一alt +/自动补全一ctrl+1纠错,ctrl+alt+down—ctrl + / ,单行注释; 多行注释:ctrl + shift + /—在myeclipse当中怎么查看访问的是哪个属性,查看访问的是哪个方法?//按ctrl键,鼠标移动到查看的元素上,出现下划线的时候开始单击。—另外,在一个类当中元素过多,想快速查看,在当前类中使用“ctrl +O”快捷键,然后输入要查找的元素名称,该名称不一定输入全名称myecl原创 2020-06-07 22:52:35 · 103 阅读 · 0 评论 -
对象和引用的概念?
对象和引用:对象和引用的概念?对象:目前在使用new运算符在堆内存中开辟的**内存空间**称为**对象**引用:是一个变量,不一定是局部变量,还看是成员变量,引用保存了内存地址,指向了堆内存当中的对象所有访问实例相关的数据,都需要通过“引用.”的方式访问,因为只有通过引用才能找到对象。只有一个空的引用,访问对象的实例相关的数据会出现空指针异常。```class Student(){ Computer com; //com是一个引用【实例变量】 public static void doSo原创 2020-06-07 22:52:16 · 323 阅读 · 0 评论 -
JAVA中参数传递概念,分析以及内存原理图(几个示例教你搞清内存原理)
``` 方法调用的时候,涉及到参数传递的问题,传递的时候,java之遵循一种语法机制, 就是将变量中保存的“值”传递过去了,只不过有的时候这个值是 一个字面值,有的时候 这个值是另一个Java对象的内存地址0x1234```原创 2020-06-07 22:49:29 · 404 阅读 · 0 评论 -
JAVA封装的好处、步骤和举例说明
这里写目录标题封装的步骤:二级目录三级目录封装的步骤:示例一:示例二:封装的步骤:二级目录三级目录封装的步骤:*1.所有属性私有化使用private修饰符进行修饰,修饰后只能在本类中进行访问2.对外接口简单的操作,也就是说公共方法,分别是get和set,想修改使用set,想访问使用get…一个属性提供两个方法3.set方法命名规范: * public void setAge(int a) * {age = a; * }4.get方法命名规范:* public void ge原创 2020-06-07 16:01:48 · 557 阅读 · 0 评论 -
JAVA中return用法
在同一个作用域内,return下面不能再编写语句在返回值类型是void中使用return语句,主要是为了终止该方法,return弹栈作用返回值类型不是void,必须返回return值;return类型必须统一一个方法有返回值时,方法可接收,也可不接收方法执行到return语句时自动结束该方法...原创 2020-06-07 15:57:44 · 439 阅读 · 0 评论 -
JAVA中对象的创建与使用
1.定义一个计算机类【电脑/笔记本】,计算机类有哪些属性:(1) 品牌(2)型号(3)颜色2.定义一个学生类,学生类有哪些属性:(1)学号(2)姓名(3)学生有一个笔记本电脑**要求:**请用编程来表示以上的类,然后分别将类创建为对象对象数量不限,然后让其中的一个学生去使用其中的一台笔记本电脑然后编译并运行,并且将整个运行过程采用图形的方式描述出来所有代码全部写到当前的源文件中*///计算机类class Computer{ String brand; String sty原创 2020-06-04 15:17:51 · 876 阅读 · 0 评论 -
JAVA中同目录下定义类,以及对象的创建与使用,内存图的原理
JAVA中同目录下定义类,以及对象的创建与使用,内存图的原理JVM(java虚拟机)主要包括三块内存空间。分别是:栈内存,堆内存,方法区内存。堆内存和方法区内存各有一个。一个线程一个栈内存。方法调用的时候,该方法所需要的内存空间在栈内存中分配,成为亚展。方法之行结束之后,该方法所属的内存空间释放,称为弹栈。战中主要存储的是方法体当中的局部变量。原创 2020-06-03 15:47:13 · 358 阅读 · 0 评论 -
编写程序时用到的选中这一行或者多行的快捷键,多行退格
其实快捷键是非常的好用的,无论是在编写程序时还是日常学习中,一些好用的快捷键可以让我们操作更加娴熟。1.编写小代码时(目前只有这些,不过我会慢慢积累的)1.1最基本的大家经常使用到的CtrI + A全选CtrI + C复制Ctrl + V粘贴Ctrl + S保存Ctrl + Z撤消上一步操作1.2选中当前行注意:行首:Home ,行尾:End1.2.1 选中当前行的一部分(1)按Home(定位至行首)然后按Shift+Dnd(行尾)(2)按End(定位至行尾)然后按Shif原创 2020-06-01 22:38:50 · 7351 阅读 · 1 评论 -
JAVA中方法的递归调用
JAVA中方法的递归调用,递归与内存之间的关系(可能会导致内存溢出),递归的应用举例扩展,递归求解和,阶乘原创 2020-05-31 20:09:52 · 1014 阅读 · 0 评论 -
JAVA中方法重载的条件,判断和举例
JAVA中方法重载的条件,判断和举例1、方法重载又叫 overload2、什么时候 考虑用方法重载?功能相似的时候,尽可能让方法名相同3、什么条件下构成了方法重载?—在同一个类中—方法名相同—参数列表不同:{数量不同、顺序不同、类型不同};4、方法重载和什么有关系,合适吗没有关系?——方法重载和方法名+参数列表 有关系——方法重载与返回值类型没有关系——方法重载和修饰符列表无关5、具体实例:输出语句System.out.println(b);太长了,我们把它封装起来也就是是用来方原创 2020-05-29 23:05:30 · 3514 阅读 · 2 评论 -
1到100内的素数
列出1到100之内的所有素数,要求每八个数换行public class Sushu { public static void main(String[] args) { int count = 0; int i,j; for(i=2;i<=100;i++) { for(j=2;j<i;j++) { if(i % j ==0) break; //impove efficiency } if(j==i)原创 2020-05-29 14:14:02 · 276 阅读 · 0 评论 -
经典求解99乘法表
public class Switchtest { public static void main(String[] args) { for(int i=1;i<=9;i++) { for(int j=1;j<i;j++) { System.out.print(i + "* " +j + "=" + i * j + " "); } System.out.println(); } } }原创 2020-05-28 22:05:30 · 347 阅读 · 0 评论 -
JAVA中case的简单用法
public class Switchtest { public static void main(String[] args) { java.util.Scanner s = new java.util.Scanner(System.in); System.out.println("Welcome to come here! "); System.out.print("please input the first number:"); int num1 = s.nex.原创 2020-05-28 21:16:47 · 7993 阅读 · 0 评论 -
JAVA怎么实现一个文件的拷贝
文件拷贝并记录时间import java.io.*;public class Shuru { public static void main(String[] args) { try { FileInputStream input = new FileInputStream("C:\\Users\\admin\\two tigers.mp4"); FileOutputStream output = new FileOutputStream("C:\\Users\\admin原创 2020-05-28 15:11:20 · 227 阅读 · 0 评论 -
JAVA中数据类型之间的转换规则
关于基本数据类型之间的转换转换规则——转换规则第一,八种基本数据类型当中,除布尔类型之外,剩下的七种类型都可以互相转换第二,小容量可以向大容量转化,称为自动类型转换,容量从小到大排序java中各种数据类型所占空间的大小注意:(1)任何浮点类型,不管占用多少个字节,都比整型容量大(2)Char和short类型可表示的种类数量相同,但串可取更大正整数第三,大容量转换为小容量,叫做强制类型转化,需要加强制类型转换符编译才能通过,但是运行时可能会损失精度,所以谨慎使用第四,当整数字面值没有超出b原创 2020-05-27 22:03:36 · 424 阅读 · 0 评论 -
JAVA中方法覆盖,看这篇就够了
方法覆盖1、方法覆盖又被称为方法重写2、什么时候使用方法重写?当父类中的方法已经无法满足当前子类的业务需求;子类有必要将父类中继承过来的方法进行重新编写;代码需要满足什么条件才能构成方法覆盖?1、方法重写发生在具有继承关系的父子类之间;2、方法重写的时候:方法名相同、返回值类型相同、形参列表相同;3、方法重写的时候:访问权限不能更低,可以更高;4、方法重写的时候:抛出异常不能更多,可以更少;5、建议方法重写的时候尽量复制粘贴!(因为容易出错,导致没有产生覆盖)(第五点特别需要注意,我在原创 2020-05-21 19:47:41 · 1424 阅读 · 0 评论