Java基础巩固
浅尝即止何来突破
只为成功找方法,不为失败找借口
展开
-
对称加解密算法与非对称加解密算法
对称加解密算法与非对称加解密算法介绍与用法说明原创 2022-07-13 15:44:20 · 1194 阅读 · 0 评论 -
JAVA基础---多态
JAVA基础---多态概念:多态是以继承为基础,通过重写父类方法达到不同子类对同个方法有不同表现形式。多态问题与解答:1、如何在重写方法中调用父类原方法答:通过super调用,super区别于this,可调用父类方法与变量2、子类实例直接赋值父类引用与通过强制类型转换赋值有没区别答:无区别3、子类对象拥有与父类对象同类型同名称变量,各自方法调用该变量有无影响。答:无影响,子类方法直接调用自身变量,可通过super调用父类对象变量。父类方法调用的变量i永远是父类自身的变量i原创 2022-04-05 12:24:32 · 399 阅读 · 0 评论 -
JAVA---int数组声明与初始化
JAVA---int数组声明与初始化JAVA中int数组声明与初始化:有3种正确方式同时进行声明与初始化;分别为new int[num],{}以及new int[]{...}。注意,当使用new int[num]时只能按照默认值赋予各个元素,不可自定义。有2种正确方式进行声明与初始化分离;分别为new int[num]以及new int[]{...}; public static void main(String[] args) { int[] i1=new int[原创 2022-03-26 15:19:31 · 18864 阅读 · 0 评论 -
JAVA基础--避免过多非空判断
JAVA基础--避免过多非空判断前言:写项目时总会在方法业务代码中使用到if与else去判断空指针异常解决方法:最简单避免过多非空判断的方式是自己编写的所有类下方法都避免返回null空指针。如果真响应为空响应,则自定义一个专属空响应的对象,让调用者正常处理而不报错。...原创 2022-01-27 16:24:31 · 891 阅读 · 0 评论 -
JAVA基础--异常情况
JAVA基础--抛出异常情况前言:任何JAVA代码执行时都有可能出现异常情况的抛出。一般在异常方法内部有两种情况处理异常。通过trycatch处理异常通过throws向外层方法抛出异常对不处理异常情况的代码情况进行代码实践,代码实践两部分不处理异常情况多线程下出现一个线程抛出运行时异常原创 2022-01-26 17:13:22 · 924 阅读 · 0 评论 -
JAVA基础--原型模式下使用的克隆与new区别
前提:设计模式中的原型模式是在一对象基础上使用clone进行对象的克隆。在实现clonable接口的基础上调用clone方法属于浅层克隆,对对象除基本对象外的其他对象分别调用clone方法则对该对象属于深克隆。new是调用构造器进行对象的构建。性能区别:通过克隆生成对象性能优于通过new。使用场景:在大规模创建对象时用克隆大大提升性能...原创 2021-12-20 11:53:51 · 650 阅读 · 0 评论 -
JAVA基础--Lamda表达式&方法引用
JAVA基础---Lamda表达式与方法引用什么是函数式接口:函数式接口有且仅有一个抽象方法,可以有多个普通方法和静态方法。Java中对函数式接口的编译约束定义了@FunctionalInterface注释;标注了@FunctionalInterface注释的接口,在编译阶段进行了抽象接口数量约束。函数式接口常用于lamda表达式与方法引用。什么是lamda表达式:使用场景:在接口当且仅有一个抽象方法时,取代匿名内部类的使用。原创 2021-11-05 11:18:01 · 583 阅读 · 0 评论 -
JAVA基础--时间与多态
java.util.Date是java.sql包下的各个时间类型的父类,如TimeStamp、Date、Time。因此这些类型之间的转换按照父类与子类之间的转换进行。原创 2020-06-07 16:27:32 · 216 阅读 · 0 评论 -
JAVA文件数据导出
现如今各类信息存储有框架可使用,如logback等日志框架。而通过流保存信息的底层实现较少使用。今天就上手练习了下。 /** * 对象记录到本地日志文件 * @param Mes * @return */ public static boolean save(Mes Mes){ //导入对象判空 if(Mes==null){ return false; } //原创 2021-09-23 16:29:18 · 744 阅读 · 0 评论 -
JAVA基础--TreeSet
TreeSet内存储值不重复:TreeSet对存储值是否重复判断是通过compareTo()方法是否返回0进行验证判断,不同于其他Set通过equals方法判断;若为0则存在重复,该值无法插入TreeSet对象中。TreeSet中插入对象类型唯一:插入对象不能不同类型混合插入。TreeSet插入对象后默认进行排序:排序有两种方式,排序顺序按照有小到大:1、自然排序:TreeSet在没传入Comparator比较器情况下,使用自然排序。自然排序就是调用存储对象的comp..原创 2021-09-14 11:51:51 · 177 阅读 · 0 评论 -
面向对象开发-设计原则与设计模式
目录一、前提:二、面向对象编程七大原则:三、面向对象编程围绕着七大原则的二十四种设计模式:六种建造型设计模式:七种结构性设计模式:十一种行为性设计模式:四、学习设计模式需要注意的:问题1:部分设计模式在代码实现规范上存在着相同的结构原因1:一、前提:每次学习设计原则与设计模式都能有不一样的理解;因此之后的每次学习都要会在此博文进行相应的修改与补充。二、面向对象编程七大原则:开闭原则 迪米特原则 合成复用原则 依赖倒置原则 里氏代换原则 单一责任原原创 2021-08-29 01:56:42 · 249 阅读 · 0 评论 -
JAVA基础--异步编程
前提:同步一定是阻塞的,异步可阻塞也可非阻塞。JAVA异步概念概述:异步是相对于当前线程来说,具体执行代码不在当前线程而是通过线程池或者单独创建线程的方式去执行。同步则一定是在当前线程中执行。JAVA异步编程:Java异步一般使用框架,不使用框架则自己提供新建线程池或单线程的方式实现。Spring框架下,@Async标注的方法为异步非阻塞方法。实现的底层源码是通过切面AOP与线程池实现的。线程池可以使用Spring自带的默认线程池,也可以自己自定义一个线程池(线程池类型为ThreadPool原创 2021-08-25 01:00:32 · 295 阅读 · 0 评论 -
JAVA基础--类加载
不管是外部类还是内部类,都是在第一次使用时才会加载,不会跟着外部类加载而加载。一、内部类实例创建:静态内部类:静态内部类实例创建依赖外部类。非静态内部类:非静态内部类实例创建依赖外部类实例。 //静态内部类 System.out.println(new test.StaticInnerClass()); //非静态内部类 System.out.println(new test().new InnerClass());二、静态内部类与非静态内部类原创 2021-08-23 17:06:17 · 207 阅读 · 0 评论 -
JAVA基础--枚举
概念:JAVA的枚举与C/C++的枚举有很大的区别。C/C++的枚举值对应从0开始递增的整型,而JAVA的枚举值是一个继承至Enum的公开静态对象常量,在枚举类加载入虚拟机时创建,并且是唯一。以下代码段转载于https://www.cnblogs.com/zhanqing/p/11076646.html,里面有较多关于枚举类的知识。本人转了其中反编译后的枚举类,清晰简要显示了枚举类型的本质。定义的枚举类//定义枚举类型enum Day { MONDAY, TUESDAY, WEDNE原创 2020-06-24 23:21:33 · 213 阅读 · 0 评论 -
JAVA基础--锁与JSON
Java构造函数默认的权限与类权限相同。可以自定义构造器权限为public、private、protected。 Java权限的适用范围: public protected default private 同一类下 √ √ √ √ 同一包下 √ √ √ 不同包的子类 √ √ ...原创 2020-04-09 00:50:50 · 224 阅读 · 0 评论