自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(183)
  • 收藏
  • 关注

原创 【项目自动化构建工具】gradle入门到进阶

maven侧重于jar包的管理, gradle则侧重于项目的构建, 其次在构建项目方面,gradle的性能是远高于Maven的,尤其是针对于大型多项目的构建Java中默认是default修饰的示例因为groovy为属性直接生成了getter,setter方法,所以直接调用方法声明时的参数类型,返回值类型, return关键字可以省略,如果这个方法有多行语句的话,它会把最后一行的返回值,作为多行的返回值在方法调用时不引起歧义的地方这个小括号可以省略。

2024-09-03 07:46:36 493

原创 [数据库]mysql用户管理&&权限管理

我们用创建的用户在登录之后可以看到他和root看到的数据库是完全不一样的。登录这个账户可以看到还看不到teatdb这个数据库, 因为还没有授权。过来刷新之后可以看到有了。

2024-06-29 08:08:06 267

原创 [数据库]事务的隔离级别&&存储引擎

进行回滚操作后可以发现有一个警告没有行受到影响。比如用于qq的在线离线状态。

2024-06-29 07:50:31 255

原创 [数据库]索引机制

4.全文索引, 全文索引是适用于MySAM的, MySAM是一个引擎, 全文索引好比有一篇文章, 里面有电影两个字, 你要快速找到这两个字就可以添加全文索引, 一般mysql带的全文索引但是不好用, 一般用Solr和ElasticSearch。加上索引之后进行二叉树查找, 找到1之后, 发现1的左边没有了, 右边也没有了就停止了, 如果还有会继续往下找, 如果比较30次在二叉树中加覆盖了2的30次方那么大的范围。2.唯一索引, id是唯一的, 同时也是索引。3.普通索引, 单独给一个列添加索引。

2024-06-29 07:27:13 365

原创 [数据库]外键&&check

外键check

2024-06-29 06:56:16 186

原创 [数据库]数据库备份与恢复

备份表 表不带-B。

2024-06-28 07:57:04 104

原创 [Java基础揉碎]反射

除上面引出用到方法其余的使用示例:(类中有这两个构造器)

2024-06-28 07:41:48 779

原创 [Java基础揉碎]QQ聊天项目

加上序列化, 加上UID增加兼容性。

2024-06-19 07:53:36 356

原创 [Java基础揉碎]网络相关概念

除了可以通过socket.shutdownOutput()来设置结束标记, 还可以通过writer.newLine()设置。这就是为什么高并发的时候,我们这个端口是有限的,会什么会出现端口冲突。upd相当于tom吆喝了一声, kim有没有收到是不确定的。输入空格不断显示下一页。需要用到的工具类方法。上面的基础上修改部分。

2024-06-11 07:41:34 365

原创 [Java基础揉碎]坦克大战 && java事件处理机制

√好玩√涉及到java各个方面的技术1. java面向对象编程2.多线程3. 文件i/o操作4. 数据库5. 巩固旧知识,学习新知识。

2024-06-04 08:06:39 846

原创 [java基础揉碎]文件&&IO流

目录文件什么是文件 文件流​编辑常用的文件操作 创建文件方式一 创建文件方式二 创建文件方式三tip:为什么new file 了还有执行createNewFile?new File的时候其实是在内存中创建了文件对象, 还没有在磁盘中, 当执行createNewFile的时候才是往磁盘中写入​编辑获取文件的信息 (常用)目录的操作 (windows文件夹), 在java中目录也被当作一个文件,方式使用没有区别Io流 io原理即流的分类​编辑字节流常用子类 文件输入流​编辑文件输出流文件拷贝字符流FileRea

2024-05-29 08:10:23 597

原创 [Java基础揉碎]多线程基础

单核cpu来回切换, 造成貌似同时执行多个任务, 就是并发;在我们的电脑中可能同时存在并发和并行;

2024-05-16 07:46:57 619

原创 [Java基础揉碎]泛型

泛(广泛)型(类型)=> Integer, String, Dog1)泛型又称参数化类型,是Jdk5.0 出现的新特性,解决数据类型的安全性问题2)在类声明或实例化时只要指定好需要的具体的类型即可3)Java泛型可以保证如果程序在编译时没有发出警告,运行时就不会产生 ClassCastException异常。同时,代码更加简洁、健壮4)泛型的作用是:可以在类声明时通过一个标识表示类中某个属性的类型,或者是某个方法的返回值的类型,或者是参数类型。注意细节1)普通成员可以使用泛型(属性、方法)

2024-04-20 11:26:41 905

原创 [Java基础揉碎]JUnit测试框架

1. JUnit是一个Java语言的单元测试框架2. 多数Java的开发环境都已经集成了JUnit作为单元测试的工具。

2024-04-20 11:22:57 175

原创 [Java基础揉碎]集合

1) 无序(添加和取出的顺序不一致),没有索引2) 不允许重复元素,所以最多包含一个null1)存放的元素是键值对:即K-V2) hashtable的键和值都不能为null,否则会抛出NullPointerException3) hashTable 使用方法基本上和HashMap一样4) hashTable是线程安全的(加了synchronized),hashMap是线程不安全的5) hashTable的底层就是一个HashTable$Entry的数组+单向链表不会转为红黑树。

2024-04-19 12:45:36 715

原创 [Java基础揉碎]日期类

2) Calendar 类是一个抽象类,它为特定瞬间与一组诸如 YEAR、 MONTH、DAY_OF_MONTH、HOUR等 日历字段 之间的转换提供了一些方法,并为操作日历字段(例如获得下星期的日期)提供了一些方法。2) SimpleDateFormat: 格式和解析日期的类 SimpleDateFormat 格式化和解析日期的具体类。1) LocalDate(日期)、 LocalTime(时间)、 LocalDateTime(日期时间)JI。1)第二代日期类,主要就是Calendar类(日历)。

2024-04-11 08:06:39 345

原创 [Java基础揉碎]Biglnteger和BigDecimal类

异常怎么解决, 指定一个精度, 以下是保留分子的精度 , 分子多少位小数就保留多少位小数。2) subtract 减。3) multiply 乘。2) subtract 减。3) multiply 乘。4) divide 除。4) divide 除。

2024-04-10 22:09:29 160

原创 [Java基础揉碎]System类

int[] src={1,2,3};int[] dest = new int[3];System.arraycopy(src, 0, dest, 0, 3);

2024-04-10 21:53:40 199

原创 [Java基础揉碎]Arrays类

如果传进去的是92 , 它的位置本来就该在90的后面, 123的前面, 也就是下标3的位置, 那么加一的负数就是得到-4。追进去binarySort里面看到它调用了接口实现的compare方法, 来决定排序的顺序。如果这个值在数组中不存在, 就返回它本该在的下标加一的负数, 下面就是-6。也就是说匿名内部类这里你返回的是大于0 还是小0 决定了你的排序顺序。追进去可以看到走的binarySort() //二叉树排序。断点可以看到走的TimSort.sort()方法。

2024-04-10 21:43:25 639

原创 [Java基础揉碎]Math类

Math类包含用于执行基本数学运算的方法,如初等指数、对数、平方根和三角函数。

2024-04-09 22:46:37 354 1

原创 [Java基础揉碎]StringBuffer类&& StringBuild类

java.lang.StringBuffer代表可变的字符序列,可以对字符串内容进行增删。很多方法与String相同,但StringBuffer是可变长度的。StringBuffer是一个容器。StringBuffer是一个final类, 不能被继承。1)一个可变的字符序列。此类提供一个与StringBuffer 兼容的API,但不保证同步(StringBuild不是线程安全的)。该类被设计用作 StringBuffer 的一个简易替换,用在字符串缓冲区被单个线程使用的时候。

2024-04-09 22:28:49 1155

原创 [Java基础揉碎]String

当调用intern 方法时,如果池已经包含一个等于此 String 对象的字符串(用 equals(Object)方法确定),则返回池中的字符串的引用地址。最终指向的是堆中的空间地址。为什么p1.name==p2.name为true , 因为虽然p1, p2对象分别指向堆中的地址, 但是p1.name和p2.name都在堆中指向了同一个常量池地址。此处是先让a的 j 字符和b 的 j 字符比 , 如果一样, 再让a的第二个字符 c 和 b的第二个字符 a 比, 'c'-'a'返回得到2。

2024-04-09 08:08:30 690

原创 [Java基础揉碎]包装类 && 继承图查看所有方法

这里用了自动装箱, 其实底层是调了 valueOf 这个方法, 源码可以看到, valueOf在一个值传进去之后先去判断是否在一个范围内, 在这个范围内直接返回, 如果不在这个范围内再去new 一个新的对象。断点进入可以看到, 因为在比较的时候自动将Integer进行了自动拆箱, 返回了int , int 和int 比较就是值比较。答:都为true时, 上面输出的是1.0, 因为三元运算符是一个整体, Double的精度最高, 提升了优先级。下面输出的是1, if-else是单独的语句, 不会提升优先级。

2024-04-09 07:25:32 1013

原创 [Java基础揉碎]异常

当程序中出现了某些“错误”,但该错误信息并没有在Throwable子类中描述处理,这个时候可以自己设计异常类,用于描述该错误信息。1)定义类:自定义异常类名(程序员自己写)继承Exception或RuntimeException2)如果继承Exception,属于编译异常3)如果继承RuntimeException,属于运行异常(一般来说,继承RuntimeException)

2024-04-07 22:42:48 874

原创 [Java基础揉碎]注解

1)注解(Annotation)也被称为元数据(Metadata),用于修饰解释包、 类、方法、属性、构造器、局部变量等数据信息。2)和注释一样,注解不影响程序逻辑,但注解可以被编译或运行,相当于嵌入在代码中的补充信息。3)在JavaSE中,注解的使用目的比较简单,例如标记过时的功能,忽略 警告等。在JavaEE中注解占据了更重要的角色,例如用来配置应用程序的任何切面,代替javaEE旧版中所遗留的繁冗代码和XML配置等。

2024-04-02 08:06:35 446

原创 [Java基础揉碎]枚举

1)枚举对应英文(enumeration,简写 enum)2)枚举是一组常量的集合。3)可以这里理解:枚举属于一种特殊的类,里面只包含一组有限的特定的对象象。

2024-04-02 07:27:04 495

原创 [Java基础揉碎]内部类&&匿名内部类

一个类的内部又完整的嵌套了另一个类结构。被嵌套的类称为内部类(inner class), 嵌套其他类的类称为外部类(outer class)。是我们类的第五大成员[思考:类的五大 成员是哪些?[属性, 代码块, 构造器. 方法, 内部类]],内部类最大的特点就是可以直接访问私有属性,并且可以体现类与类之间的包含关系main去调用时, 调用m1, m1下面创建了Inner02去调用内部类的方法。

2024-03-30 12:26:30 834

原创 [Java基础揉碎]接口

接口就是给出一些没有实现的方法,封装到一起到某个类要使用的时候,在根据具体情况把这些方法写出来。语法:interface接口名{//属性//方法class 类名 implements 接口{自己属性;自己方法;必须实现的接口的抽象方法1.在Jdk7.0前接口里的所有方法都没有方法体,即都是抽象方法。2. Jdk8.0后接口可以有静态方法,默认方法,也就是说接口中可以有方法的具体实现实现接口vs继承类。

2024-03-30 09:56:30 567

原创 [Java基础揉碎]抽象类

所谓抽象方法就是没有实现的方法所谓没有实现就是指, 没有方法体当一个类中存在抽象方法是, 这个类也必须声明为抽象类一般来说, 抽象类会被继承, 有子类来具体实现。

2024-03-25 22:18:23 673

原创 [Java基础揉碎]final关键字

final 中文意思:最后的,最终的final可以修饰类、属性、方法和局部变量// 方法的形参也是可以的①定义时: public final double TAX_RATE=0.08;②在构造器中③在代码块中// 只用static这么用的时候会进行类加载, 静态代码块被加载了// final 和 static搭配使用时, 不会进行类加载。

2024-03-24 21:12:39 884

原创 [Java基础揉碎]单例模式

1.静态方法和属性的经典使用2.设计模式是在大量的实践中总结和理论化之后优选的代码结构、编程风格、 以及解决问题的思考方式。设计模式就像是经典的棋谱,不同的棋局,我们用不同的棋谱,免去我们自己再思考和摸索1.所谓类的单例设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法2.单例模式有两种方式:1)饿汉式2)懒汉式。

2024-03-24 18:27:00 640

原创 [java基础揉碎]代码块

代码化块又称为初始化块,属于类中的成员[即是类的一部分],类似于方法,将逻辑语句封装在方法体中,通过{}包围起来。但和方法不同,没有方法名,没有返回,没有参数,只有方法体,而且不用通过对象或类显式调用,而是加载类时,或创建对象时隐式调用。

2024-03-24 11:31:58 478

原创 [java基础揉碎]理解main方法语法

4.该方法接收String类型的数组参数,该数组中保存执行java命令时传递给所运行的类的参数, 案例演示, 接收参数。2)但是,不能直接访问该类中的非静态成员,必须创建该类的一个实例对象后,才能通过这个对象去访问类中的非静态成员。2. java虚拟机需要调用类的main()方法,所以该方法的访问权限必须是public。也就是说在执行这个java程序的时候传进去的参数, 它会把这些参数当成一个字符串数组。1)在main()方法中,我们可以直接调用main方法所在类的静态方法或静态属性。

2024-03-24 09:06:16 233

原创 [java基础揉碎]类变量和类方法

类变量也叫静态变量/静态属性,是该类的所有对象共享的变量,任何一个该类的 对象去访问它时,取到的都是相同的值,同样任何一个该类的对象去修改它时,修改的也是同一个变量。访问修饰符 static 数据类型 变量名;[推荐]static 访问修饰符 数据类型 变量名;类方法也叫静态方法访向修饰符 static 数据返回类型 方法名(){}[推荐]static 访问修饰符 数据返回类型 方法名(){}

2024-03-24 08:46:02 592

原创 [java基础揉碎]断点调试

1.断点调试是指在程序的某一行设置一个断点,调试时,程序运行到这一行就会停住, 然后你可以一步一步往下调试,调试过程中可以看各个变量当前的值,出错的话,调试到出错的代码行即显示错误,停下。进行分析从而找到这个Bug2.断点调试是程序员必须掌握的技能。3.断点调试也能帮助我们查看java底层源代码的执行过程,提高程序员的Java水平。

2024-03-17 22:00:57 405

原创 [java基础揉碎]Object类详解

我们可以通过System.gc()主动触发, 但是这个触发也有可能不生效的, (好比保洁阿姨正常是5点打扫卫生, 但是你觉得太脏了提前打电话叫了保洁阿姨, 此时如果保洁阿姨有时间可能立马就过来打扫, 如果此时保洁阿姨在打扫其他地方, 她可能就不过来了, 或者她就是没到点不过来) 所以说它还取决于系统的其他运行。在执行发现没有调用finalize里面的内容是怎么回事, 是因为垃圾回收器什么时候回收不是对象一变成垃圾就立马回收的, 而是有一个垃圾回收的算法。2.==: 如果判断基本类型,判断的是值是否相等。

2024-03-17 21:17:51 844

原创 [java基础揉碎]idea怎么查看jdk源代码

2024-03-16 20:33:05 406

原创 [java基础揉碎]多态参数

定义一个经理类, 也继承了员工类, 同时经理多以了一个奖金的属性, 重写的年工资方法也多加上了奖金。还可以同类类型判断实现如果是普通员工就掉普通员工的方法, 如果是经理就调用经理的方法。最终通过同一个方法同一个父类形参,传进去不同的子类实参得到不同的对象的年工资。定义一个员工类, 有名字和工资两个属性, 有年工资的方法。方法定义的形参类型为父类类型,实参类型允许为子类类型。定义一个普通员工继承了员工类 , 重写了年工资的方法。写一个方法得到任何对象的年工资。

2024-03-16 20:18:41 371

原创 [java基础揉碎]多态数组

多态数组就是有一个父类数组, 数组含有不同多个父类子类对象。

2024-03-15 08:00:35 378

原创 [java基础揉碎]动态绑定机制

新建一个父类:新建一个子类继承父类:这里有个main方法, 创建了一个向上转型的对象 , 这时因为对象的运行类型是b, 所以下面打印走的b方法得到40 , 30如果我们将子类的sum注销, 那么调用的这个方法后去找父类, 我们发现父类的sum调用的geti, 此时这个geti在父类子类当中都有, 回去调那个geti, 在此处就发生了动态绑定机制, 此时会去掉子类的geti因为对象的运行类型是子类B, 也就是当调用对象方法的时候,该方法会和该对象的内存地址/运行类型绑定。

2024-03-14 08:09:13 370

空空如也

空空如也

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

TA关注的人

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