多态性 对象java

Java后端递归构建树形结构

简明:为了简化代码,引入Lombok的Jar包,可省略实体类set()、get()方法 <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.16.12</versio ......
树形 结构 Java

java设计模式——工厂模式

一个营销场景:用户通过打卡、分享、邀请新用户注册、浏览商品信息等操作获取积分,这些积分可以兑换一定的福利,比如赠送咪咕视频会员卡、发放实物商品、赠送优惠券等。 先创建一个单独的module,包含三种福利实现的接口。 序号 | 类型 | 接口 :-:|:-:|:-: 1 | 咪咕会员卡 | grant ......
模式 设计模式 工厂 java

力扣904(Java)-水果成篮(中等)

题目: 你正在探访一家农场,农场从左到右种植了一排果树。这些树用一个整数数组 fruits 表示,其中 fruits[i] 是第 i 棵树上的水果 种类 。 你想要尽可能多地收集水果。然而,农场的主人设定了一些严格的规矩,你必须按照要求采摘水果: 你只有 两个 篮子,并且每个篮子只能装 单一类型 的 ......
水果 Java 904

装饰器模式:动态给一个对象添加一些额外的职责

当我们想要在不改变原有对象的结构和功能的基础上,动态地给一个对象添加一些额外的行为或职责时,可以使用装饰器模式。 在装饰器模式中,通常会定义一个抽象装饰器类和具体的装饰器类。抽象装饰器类和被装饰对象实现同样的接口,而具体的装饰器类则包含了一个指向被装饰对象的引用,并且在其基础上增加了额外的行为或职责 ......
职责 对象 模式 动态

Android JAVA连接MQTT,以及常见问题

本文介绍如何使用Android(JAVA)客户机连接MQTT服务器 第一步先引入MQTT 在 build.gradle 添加以下: dependencies { implementation 'org.eclipse.paho:org.eclipse.paho.client.mqttv3:1.1.0 ......
常见问题 常见 Android 问题 JAVA

2023年SHEIN的JAVA后端实习笔试题

2023年SHEIN笔试题目:10道单选,5道多选,一道算法,一道SQL(单选)1、下列关于线性链表的叙述中,正确的是:进行插入和删除时,不需要移动链表中的元素。2、关于以下程序代码的说明正确的是:class HasStatic{ private static int x = 100; public ......
试题 SHEIN 2023 JAVA

回顾Python的可迭代对象、迭代器、生成器

一、可迭代对象:可以用for遍历的对象,包括list、set、dict等。 二、迭代器:能够记录当前迭代位置的可迭代对象,就是迭代器。 1)把list、set、dict等简单的可迭代对象用iter()函数包装一下,就成了迭代器。 例如 x=iter([1,2,3]) # type(x) 输出 lis ......
生成器 对象 Python

java面试题--Spring

一、Spring、SpringMVC、SpringBoot的区别是什么? 二、???? 三、SpringMVC工作流程是什么? 1、DispatcherServlet接收请求,将请求发给HandlerMapping; 2、HandlerMapping根据请求url,匹配到要处理的handler,并包 ......
Spring java

java中使用RedisTemplate读取数据异常 Missing type id when trying to resolve subtype of [simple type, class java.lang.Object]: missing type id property '@class' at [Source: (byte[])"

解决方法: 直接储存对象,交给redisTemplate来序列化,或手动使用Jackson2JsonRedisSerializer序列化对象。 ......
type class java RedisTemplate property

比较Python与Java在类的定义、继承、多态等方面的异同

首先我来进行介绍Python与Java在类的定义、继承、多态等方面的异同 1.python类和java类的使用一览 java: public class Car { private String color; private String model; private int year; publi ......
异同 方面 Python Java

java 分词统计

依赖(谷歌基于lucene的中文分词IKAnalyzer) <dependency> <groupId>org.wltea</groupId> <artifactId>ikanalyzer</artifactId> <version>5.0.2</version> </dependency> <de ......
java

Java设计模式-简单工厂模式

简介 在软件开发过程中,设计模式是一种被广泛应用的实践,它是通过总结、归纳和提炼出软件设计经验,从而使得设计更加优雅、高效。简单工厂模式是设计模式中最基本、最简单的一种模式,它能够有效地封装对象的创建过程,简化代码结构。 简单工厂模式又称为静态工厂方法模式,它是通过定义一个工厂类,用于创建不同的对象 ......
模式 设计模式 工厂 Java

Java报错:Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.http.converter.

报错内容 Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.spr ......

JAVA线程池开发

1.java给我们自带了4种线程池newSingleThreadExexcutor:单线程数的线程池(核心线程数=最大线程数=1)newFixedThreadPool:固定线程数的线程池(核心线程数=最大线程数=自定义)newCacheThreadPool:可缓存的线程池(核心线程数=0,最大线程数 ......
线程 JAVA

【代理设计模式详解】C/Java/JS/Go/Python/TS不同语言实现

简介 代理模式(Proxy Pattern)是一种结构型设计模式,用一个类来代理另一个类或几个类的功能。 在代理模式中,我们创建具有现有对象的对象,以便向外界提供功能接口。 延迟初始化(虚拟代理)。如果你有一个偶尔使用的重量级服务对象,一直保持该对象运行会消耗系统资源时,可使用代理模式。 访问控制( ......
设计模式 语言 模式 Python Java

GraalVM(云原生时代的Java)和IoT在边缘侧落地与实践

环顾四周,皆是对手! 云时代的掉队者,由于Java启动的高延时、对资源的高占用、导致在Serverless及FaaS架构下力不从心,在越来越流行的边缘计算、IoT方向上也是难觅踪影; Java语言在业务服务开发中孤独求败,但在系统级应用领域几乎是C、C++、搅局者Go、黑天鹅Rust的天下; 移动应 ......
边缘 GraalVM 时代 Java IoT

一种新的流:为 Java 加入生成器(Generator)特性

这篇文章不是工具推荐,也不是应用案例分享。其主题思想,是介绍一种全新的设计模式。它既拥有抽象的数学美感,仅仅从一个简单接口出发,就能推演出庞大的特性集合,引出许多全新概念。同时也有扎实的工程实用价值,由其实现的工具,性能均可显著超过同类的头部开源产品。 ......
生成器 Generator 特性 Java

字符串对象

在Python中,字符串被视为对象。它的类型名为 str,函数type可以输出字面量和变量的类型class 'str' 要想调用对象的属性和方法,需要在对象后面加一个点号运算符,然后连接属性或方法mystr.lower() 在Python中,方法与属性的调用区别在于,属性名后面不需要任何后缀,而方法 ......
字符串 字符 对象

Java基础

Java基础 Java基础篇 JDK 和 JRE 的区别是什么? JDK:Java Development Kit 的简称,java 开发工具包,提供了 java 的开发环境和运行环境。 JRE:Java Runtime Environment 的简称,java 运行环境,为 java 的运行提供了 ......
基础 Java

JAVA运算符详解

JAVA运算字符详解 赋值运算符 符号作用说明 = 赋值 int a = 10; 将10赋值给变量a += 加后赋值 a += b; 将a+b的值给a - = 减后赋值 a -= b; 将a-b的值给a *= 乘后赋值 a *= b; 将a*b的值给a /= 除后赋值 a / =b ; 将a/b的值 ......
运算符 JAVA

Python_12 多继承与多态

多继承 概念:一个类继承多个类,该类就拥有了多个类的方法和属性(私有的方法和属性除外) 语法:class 子类(父类1,父类2): 子类调用父类的方法和属性:super()方法使用和普通方法使用都遵循子类 --- 父类1 --- 父类2的查找顺序 ......
Python 12

Java并发(三)----创建线程的三种方式及查看进程线程

一、直接使用 Thread // 创建线程对象 Thread t = new Thread() { public void run() { // 要执行的任务 } }; // 启动线程 t.start(); 例如: // 构造方法的参数是给线程指定名字,推荐 Thread t1 = new Thre ......
线程 进程 方式 Java

docker-compose一键部署java开源项目

这一年干的很多事都是为了降低我的开源项目消息推送平台austin使用门槛。 如果想学Java项目的,强烈推荐我的开源项目消息推送平台Austin(8K stars) ,可以用作毕业设计,可以用作校招,可以看看生产环境是怎么推送消息的。开源项目消息推送平台austin仓库地址: 消息推送平台🔥推送下 ......
docker-compose compose 项目 docker java

java排序算法2(简单选择排序、堆排序)

简单选择排序 不稳定 选择排序在未排序序列中找到最小(大)元素,存放到排序序列的起始位置,然后以此类推,直到所有元素均排序完毕。 for (int i = 0; i < arr.length; i++) { //记录最小值下标位置 int min=i; for (int j=i+1;j<arr.le ......
算法 java

Java打印日志接口

###在java开发过程中,为了分析程序异常,或者监控程序运行流程,经常需要用到打印日志。以下为日志接口的具体实现: 点击查看代码 import java.io.BufferedWriter; import java.io.File; import java.io.FileWriter; impor ......
接口 日志 Java

Java类实现某个接口后,是否需要实现接口中的所有方法?

1.结论 并不是所有的类实现接口后都必须实现接口的所有方法! 2.特殊情况 当Java抽象类实现某个接口后没必要实现所有的方法。 3.注意点 当Java普通类实现接口后必须实现接口中的所有方法。 4.原因 为什么抽象类不需要实现所有方法? 因为抽象类本身是具有抽象性的,它的方法也大多不需要进行实现, ......
接口 方法 Java

异常处理、生成式对象

1.异常常见类型 SyntaxError:语法错误 NameError:名字错误,一般由于变量名未定义造成 IndexError:索引错误,列表的索引值超过了范围 KeyError:字典键错误,字典的键找不到 IndentationError:缩进错误 2.异常处理语法结构 1.基本语法结构: tr ......
对象

java反序列化(五) JNDI注入

JNDI注入 前置知识 JNDI JNDI (Java Naming and Directory Interface) 是一个应用程序设计的 API,为开发人员提供了查找和访问各种命名和目录服务的通用、统一的接口。可以通过字符串来锁定一个对象 JNDI 支持的服务主要有以下几种: RMI (JAVA ......
序列 java JNDI

java执行linux语句

public class CommandUtil { /** * 在指定路径下执行一条命令,不能执行cd之类的命令 * * @param command 要执行的Linux命令 * @param dir 目标路径,在该路径执行上述Linux命令 * @return 命令执行后显示的结果 * @thr ......
语句 linux java

java反序列化(五) JNDI注入

JNDI注入 前置知识 JNDI JNDI (Java Naming and Directory Interface) 是一个应用程序设计的 API,为开发人员提供了查找和访问各种命名和目录服务的通用、统一的接口。可以通过字符串来锁定一个对象 JNDI 支持的服务主要有以下几种: RMI (JAVA ......
序列 java JNDI