自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 问答 (1)
  • 收藏
  • 关注

原创 VUE知识点

vue1.什么是VUE?是一个渐进式的框架 分布式应用思想2. vue入门案例 4步:①定义div ②引入JS类库 ③实例化vue对象 ④取值操作 {{}}入门案例<!-- 1.定义VUE工作区域 --> <div id="app"> <h1>VUE入门案例</h1> <!-- 4.数据引用 插值表达式 --> {{hello}} </div> <!-- 2.导入函数类库 --&

2021-07-04 16:56:48 225

原创 第十八天

暴力反射单元测试1:暴力反射获取和设置私有属性@Test public void getFields() throws Exception { Class<?> clazz=Person.class;//1.获取字节码对象 Field field=clazz.getDeclaredField("name");//2.获取私有属性 System.out.println(field.getType().getName());//3.根据获

2021-05-26 20:06:40 82

原创 第十七天

单例设计模式饿汉式实现方式package cn.tedu.single;/*本类用于测试单例设计模式1 饿汉式*/public class Singleton1 { public static void main(String[] args) { MySingle single1=MySingle.getSingle(); MySingle single2=MySingle.getSingle(); System.out.println

2021-05-26 19:44:34 88

原创 第十六天

多线程中出现数据安全隐患的原因多线程程序 共享资源(成员变量) 多条语句操作共享资源多线程代码创建方式1.继承Thread2.实现Runnable接口多线程安全问题是如何出现的?常见情况是由于线程的随机性+访问延迟。以后如何判断程序有没有线程安全问题?在多线程程序中 + 有共享数据 + 多条语句操作共享数据注解JDK自带注解@Override :用来标识重写方法元注解@Target 注解用在哪里:类上、方法上、属性上等等@Retention 注解的

2021-05-24 20:42:17 102

原创 第十五天

Map接口1.Map可以根据键来提取对应的值2.Map的键不允许重复,如果重复,对应的值会被覆盖3.Map存放的都是无序的数据4.Map的初始容量是16,默认的加载因子是0.75HashMapHashMap底层是一个Entry[ ]数组1.HashSet中元素没有顺序,且不允许重复2.HashSet允许存null值,但也不允许重复1.Map中存放的都是无序的数据Map中的key不可以重复,如果重复,此key对应的Value会被覆盖2.Map中的数据要符合映射规则,一定要注意同时制定K

2021-05-22 09:32:14 76

原创 第十四天

泛型1.泛型怎么来的? 想要模仿数组数据类型检查2.数组好处:在编译时期就检查数据的类型,如果不是要求的类型编译器就报错3.引入泛型的目的是想通过泛型来约束集合中元素的类型4.泛型的好处:可以把报错的时机提前,在编译器就报错,而不是运行后才抛出异常在向集合中添加元素时,会先检查元素的数据类型,不是要求的类型就编译失败5.–type的值应该如何写需要查看要存放的数据类型是什么,依据类型来定义但是type必须是引用类型,不能是基本类型泛型优点泛型可以实现通用代码的编写,使用E表示元素的

2021-05-21 21:03:24 71

原创 第十三天

IO流分类1.按照方向进行分类:输入流 输出流(相对于程序而言,从程序写数据到文件中是输出)2.按照传输类型进行分类:字节流 字符流3.组合: 字节输入流 字节输出流 字符输入流 字符输出流

2021-05-21 20:24:45 103

原创 第十二天

正则表达式速查表包装类1.Integer包装类型的默认值是null2.Integer有一个高效的效果(-128~127)在此范围内,相同的数据只会存一次,后续再存都是使用之前存过的数据只有Integer才有高效的效果原因:parseInt()已经把字符串转换成了int类型,所以是运算而不是拼接自动装箱自动装箱:编译器会自动把基本类型包装成包装类型然后交给i3来保存,自动装箱底层发生的代码Integer.valueOf(5)valueOf()的方向:int—Integer自动拆箱自

2021-05-19 20:58:35 63

原创 第十一天

APIObject1.如果想要查看对象的属性值,需要重写toString()否则使用的就是Object的默认实现,打印的是对象的地址值2.如果要判断两个对象间的所有属性值相同,比较结果为true,就需要重写equals()否则使用的就是Object的默认实现,通过==比较的是两个对象的地址值,不是属性String1.字符串底层维护的是char[].存放在堆中2.此种方式创建,底层也会new String(),存放在堆中常量池,效率高3.== 比较的是地址值Object中equals()的

2021-05-17 20:58:24 88

原创 第十天

抽象类1.没有方法体的方法叫做抽象方法,被abstract关键字修饰2.用abstract修饰的类成为抽象类,如果一个类中包含抽象方法,那么这个类必须被声明为抽象类3.当子类继承了抽向父类以后,要么变成一个抽象子类,要么实现父类的所有抽象方法4.抽象类不可以创建对象/实例化特点1.abstract 可以修饰方法或者类2.被abstarct修饰的类叫做抽象类,被abstract修饰的方法叫做抽象方法3.抽象类中可以没有抽象方法4.如果类中有抽象方法,那么该类必须定义为一个抽象类5.子类继

2021-05-15 14:17:24 89

原创 第九天

多态1.多态的前提:继承+重写重写的规则:方法签名保持一致(返回值类型 方法名 参数列表)子类访问控制符的权限 >= 父类的访问控制符的权限多态的出现是为了统一调用标准,向父类看齐父类提供的功能才能用,子类特有的功能用不了2.多态中,成员变量使用的是父类的3.多态中,成员方法使用的是父类的声明,子类的实现4.多态中,如果父子类中都有同名静态方法,使用的是父类的口诀1:父类引用 指向子类对象2:编译(保存)看左边,运行(测试)看右边注意!!!静态资源属于类资源,不存在重写的

2021-05-13 19:28:52 67

原创 第八天

继承继承中成员方法的使用1.方法重写的意义:是想在不修改源代码的前提下,完成业务的要求2.重写的语法要求:子类的方法签名与父类一致,权限修饰符>=父类的修饰符3.重写并没有修改父类原有的功能,只是子类的业务进行了修改子类继承了父类以后,可以使用父类的所有非私有资源OCP原则:面向修改关闭,面向功能拓展开放——只允许功能拓展,不允许修改原来的代码这个功能的修改被称作方法的重写1.重写:和父类的方法签名[返回值类型,方法名,参数列表]保持一致修改的是子类的功能,父类的功能并没有发生任何的

2021-05-12 20:29:10 94

原创 第七天

构造方法构造方法是一种特殊的方法,它是一个与类同名且没有返回值类型的方法构造方法的主要功能就是完成对象创建或者初始化1.每次new()实例化 时,会自动调用构造方法2.默认存在无参构造,当new时,会自动触发无参构造3.构造方法也存在重载的现象,方法的重载:在同一个类中,方法名相同且参数列表不同的现象4.当只提供含参构造,默认提供的无参构造会被覆盖,所以在创建重载的构造方法时,一定要手动添加无参构造特点方法名与类名相同,且没有返回值类型执行时机创建对象时立即执行默认会创建无参构造,但

2021-05-11 20:32:56 59

原创 第六天

一级目录

2021-05-11 19:52:57 68

原创 第五天

数组数组Array,标志是[ ] ,用于储存多个相同类型数据的集合想要获取数组中的元素值,可以通过脚标(下标)来获取数组下标是从0开始的,下标的最大值是数组的长度减1创建数组动态初始化int[] a = new int[5]只创建不赋值静态初始化int[] b = new int[]{1,2,3,4,5};int[] c = {1,2,3,4,5};创建的同时赋值数组名是个引用类型的变量,它保存着的是数组的地址,不是数组中的数据数组的长度数组的长度用 length属性来表示,数

2021-05-10 20:59:29 167

原创 第四天

分支结构单分支结构if(判断条件){代码}多分支结构if(判断条件){代码}else if(判断条件){代码}嵌套分支结构if(){}else if(){}else if (){}else{}switch结构switch(expression){case value : syso(1);break;case value : syso(2);break;case value : syso(3);句break;case value : syso(4);句break;de

2021-05-10 20:42:09 71

原创 第三天

运算符方法定义格式修饰符 返回值 方法名 (参数列表) {方法体}方法的重载方法的重载是指在一个类中定义多个同名的方法,但是每个方法的参数列表不同(参数的个数和类型不同),程序在调用方法,可以通过传递给他们的不同个数和类型的参数来决定具体调用哪个方法.变量变量的使用原则:就近原则成员变量1.位置 类里方法外2.初始化 无需手动初始化,会自动赋予对应类型的默认值3.作用域 在整个类中都生效,直到类消失,成员变量才会消失局部变量1.位置 方法里/局部代码块里

2021-05-06 21:02:17 108 2

原创 第二天

标识符命名规则标识符可以由字母、数字、下划线(_)、美元符($)组成,但不能包含 @、%、空格等其它特殊字符不能以数字开头。标识符严格区分大小写。标识符的命名最好能反映出其作用,做到见名知意。标识符不能是Java的关键字。关键字53个关键字,有两个保留字:const和goto注释1.单行注释,注释单行内容Ctrl+/或者//2.多行注释,注释多行内容,虽然叫多行注释,也可注释单行内容/*开头,/结尾3.文档注释,一般用来注释类和方法,通过注释内容来记录类或者方法的信息数据类

2021-05-06 20:44:43 109

原创 入门第一天

计算机发明者约翰•冯•诺依曼。计算机是由硬件系统和软件系统所组成,没有安装任何软件的计算机称为裸机。Tab Shift Ctrl Alt 空格 Enter Window上下左右PrtSc(PrintScreen)屏幕截图 QQ截图Ctrl+Alt+ACtrl+A 全选Ctrl+C 复制Ctrl+V 粘贴Ctrl+X 剪切Ctrl+Z 撤销Ctrl+Y反撤销Ctrl+S 保存…詹姆斯•高斯林发展一套语言叫做“Oak”,后改名为Java1.J2SE/JAVASE — Standard

2021-04-06 20:46:10 88

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除