深圳幻海软件技术有限公司 欢迎您!

  • 用java实现学生成绩管理系统(附有详细代码)

    1.需求添加学生:通过键盘录入学生信息,添加到集合中删除学生:通过键盘录入需要删除学生的学号,将该学生对象从集合中删除修改学生:通过键盘录入需要修改学的学号,将该学生对象的其他信息进行修改查看学生:将集合中的学生对象信息进行展示退出系统:结束程序2.代码实现 Student类代码如下:pa

  • 【设计模式】责任链模式,让程序员摆脱乱糟糟的零散的代码

    🤵‍♂️个人主页:奇想派👨‍💻作者简介:奇想派,十年全栈开发经验,团队负责人。喜欢钻研技术,争取成为编程达人🎖️!🗺️学海无涯苦作舟,🛤️编程之路无悔路!📝如果文章对你有帮助的话,欢迎评论💬点赞👍收藏📂加关注,不胜感激!🚀更多内容,点击链接扫码关注公众号👉编程达人责任链模式&

  • java设计模式之七大原则

    以下为本人的学习笔记 1.设计模式的目的编写软件过程中,程序员面临着来自耦合性,内聚性和可维护性,可扩展性,重用性,灵活性等多方面的挑战,设计模式是为了让程序(软件)具有更好的代码重用性(即:相同功能的代码,不用多次编写)可读性(即:编程规范性,便于其他程序员的阅读和理解)可扩展性(即:当

  • 设计模式之责任链

    概述责任链模式(ChainofResponsibilityPattern)属于行为型设计模式。它为请求创建了一个处理链条,这个链条上的所有对象都要对这个请求进行处理。比如我们生活中经常使用的审批流程,当每一个节点审批通过后,发送给下一个节点,如:开发小组长->部门领导->总经理。也可以和

  • 设计模式之概述篇

    1、设计模式的本质​面向对象设计原则的实际运用,是对类的封装性、继承性和多态性以及类的关联关系和组合关系的充分理解。2、设计模式的目的​提高代码可读性、重用性、可靠性、可扩展性,实现“高内聚,低耦合”。名词解释可读性:按照规范编程,便于其他程序员阅读和理解重用性:相同功能的代码,可以重复使用,无需多

  • Java8新特性详解

    陈老老老板说明:新的专栏,本专栏专门讲Java8新特性,把平时遇到的问题与Java8的写法进行总结,需要注意的地方都标红了,一起加油。本文是介绍Java8新特性与常用方法(此篇只做大体介绍了解,之后会把重要的部分写在新的博客中)说明:在工作中发现Java8新特性的写法无处不在,必须了解学会才能看懂前

  • 卷积神经网络学习—Resnet50(论文精读+pytorch代码复现)

    前言一、Resnet论文精读引入残差残差块ResNet50模型基本构成BN层Resnet50总体结构二、Resnet50代码复现完整代码前言如果说在CNN领域一定要学习一个卷积神经网络,那一定非Resnet莫属了。接下来我将按照:Resnet论文解读、Pytorch实现ResNet50模型两部分,进

  • 面试官:死锁是如何产生的?怎么解决?

    死锁(DeadLock)指的是两个或两个以上的运算单元(进程、线程或协程),都在等待对方释放资源,但没有一方提起释放资源,从而造成了一种阻塞的现象就称为死锁。比如线程1拥有了锁A的情况下试图获取锁B,而线程2又在拥有了锁B的情况下试图获取锁A,这样双方就进入相互阻塞等待的情况,如下图所示:死锁的代码

  • Java8全新日期、时间API在这全明白了

    ​时间对生活来说非常重要,Java也为我们提供了时间的API,多数程序员都在吐槽Java8之前的日期和时间,在Java8中引入全新的日期和时间API,目前我们项目中都在使用这一新的API。之前的API到底不好在哪里?Java8的时间API到底是在吹还是真的不错?在这篇文章中都有答案!接下来会先介绍之

  • 似乎你总也记不住,byte取值范围是 -127~128 还是 -128~127

    一、前言介绍无论在面试过程中还是平时的技术交流中,似乎有很多小伙伴始终记不住java中byte类型的取值范围是多少。究其原因大部分程序员对这个取值范围是不在意的,因为知道与不知道都不影响你完成工作。另外这种知识点压根不是让你死记硬背的,当然如果你是从其他文科专业转过来学编程开发的,还情有可原。但对一

  • 从0学Java之While循环

    if语句可以判断条件是否满足,满足时才做相应的动作,而循环语句可以在满足条件时,不断地重复执行一些动作。重复执行的语句(循环语句)可以多次执行其他语句,它检查一个逻辑条件是否满足,只在满足的时候执行它的循环体。这篇文章的内容将讲解以下知识点:①while循环while语句是一个循环语句,它会首先判断

  • Strategy Pattern 教你秒变“神枪手”

    作者案:本文介绍的是StrategyPattern(策略模式)。干货满满,希望阅读后你能有所收获~目的做一件事情有不同的实现方式,可以将变化的部分和不变的部分剥离开,去除大量的if/else,提供高扩展性。例子代码比如我们想要带妹吃鸡,就要成为一个神枪手。在各种枪战游戏中,有各种不同的枪,我们要根据

  • Stream流原理与用法总结,你学会了吗?

    一、接口设计从Java1.8开始提出了Stream流的概念,侧重对于源数据计算能力的封装,并且支持序列与并行两种操作方式;依旧先看核心接口的设计:BaseStream:基础接口,声明了流管理的核心方法;Stream:核心接口,声明了流操作的核心方法,其他接口为指定类型的适配;基础案例:通过指定元素的

  • 一文搞懂响应式编程

    哈喽,大家好,我是指北君。相信响应式编程经常会在各种地方被提到。本篇就为大家从函数式编程一直到SpringWeFlux做一次简单的讲解,并给出一些示例,希望大家可以更好的理解响应式编程,可以在合适的时机运用到实际项目中。1.前言了解响应式编程,首先我们需要了解函数式操作和Stream的操作,下面我们

  • 小心!Objects.equals有坑

    前言最近review别人代码的时候,发现有个同事,在某个业务场景下,使用Objects.equals方法判断两个值相等时,返回了跟预期不一致的结果,引起了我的兴趣。原本以为判断结果会返回true的,但实际上返回了false。记得很早之前,我使用Objects.equals方法也踩过类似的坑,所以有必

  • Java中在时间戳计算的过程中遇到的数据溢出问题

     背景今天在跑定时任务的过程中,发现有一个任务在设置数据的查询时间范围异常,出现了开始时间戳比结束时间戳大的奇怪现象,计算时间戳的代码大致如下。复制package com.lingyejun.authenticator;  public class&

  • HarmonyOS自定义控件之速度检测VelocityDetector

    想了解更多内容,请访问:51CTO和华为官方合作共建的鸿蒙技术社区https://harmonyos.51cto.com一般在涉及到滚动的场景时,我们会用到速度检测。比如列表滑动时,我们需要拿到手指抬起时的瞬时速度,来做惯性滚动。又比如在滚动翻页时,我们要根据手指速度来判断是否翻到下一页还是继续保持

  • Python 3.8刚刚发布!一分钟了解新版本的强大功能!

     今天Python3.8发布啦,新版本添加了很多全新功能,也表明Python的版本之路前进了一大步,小编整理了新版本的几个主要更新,为大家做详细解读!顺便一提,导致Python之父龟叔愤然离职的赋值表达式功能还是上线了~新增赋值表达式PEP572的标题是赋值表达式,也叫做「命名表达式」,不

  • 简单地理解区分CountDownLatch与CyclicBarrier--高并发编程

    本文主要讨论在高并发编程中两非常实用工具CyclicBarrier(同步屏障)和CountDownLatch(倒计时锁),两者都是java.util.concurrent并发包内非常有用的并发工具类,为了帮助理解会结合一些有趣的比喻,下面将对两者进行讨论。一、CountDownLatch倒计时锁(一

  • 高并发的“大杀器”:异步化、并行化

    高并发的大杀器:异步化同步和异步,阻塞和非阻塞同步和异步,阻塞和非阻塞,这几个词已经是老生常谈,但是还是有很多同学分不清楚,以为同步肯定就是阻塞,异步肯定就是非阻塞,其实他们并不是一回事。同步和异步关注的是结果消息的通信机制:同步:调用方需要主动等待结果的返回。异步:不需要主动等待结果的返回,而是通

推荐阅读