- 博客(23)
- 收藏
- 关注
原创 Java设计模式——工厂模式
大家好,我是Morning,在CSDN写文,分享一些Java基础知识,一些自己认为在学习过程中比较重要的东西,致力于帮助初学者入门,希望可以帮助你进步。感兴趣的欢迎关注博主,和博主一起学习Java知识。大家还可以去专栏查看之前的文章,希望未来能和大家共同探讨技术。这里写目录标题工厂模式静态工厂模式工厂方法模式抽象工厂模式工厂模式思想就是为了创建者和调用者分离。满足开闭原则,依赖倒置原则,迪米特法则在实例化对象的时候不使用new,就是将实现类,创建对象统一管理和控制,将调用者跟我们实现类解耦。.
2022-05-26 11:00:00 194
原创 Java设计模式——单例模式
大家好,我是Morning,在CSDN写文,分享一些Java基础知识,一些自己认为在学习过程中比较重要的东西,致力于帮助初学者入门,希望可以帮助你进步。感兴趣的欢迎关注博主,和博主一起学习Java知识。大家还可以去专栏查看之前的文章,希望未来能和大家共同探讨技术。这里写目录标题单例模式饿汉式单例懒汉式单例单例模式一个类只能创建一个实例。,思想就是,构造函数私有化,对外提供一个可以访问的静态的能获得实例对象的方法。饿汉式单例public class Hungry { //构造函数私有化.
2022-05-25 16:31:39 166
原创 简述Spring IOC 和 AOP
大家好,我是Morning,在CSDN写文,分享一些Java基础知识,一些自己认为在学习过程中比较重要的东西,致力于帮助初学者入门,希望可以帮助你进步。感兴趣的欢迎关注博主,和博主一起学习Java知识。大家还可以去专栏查看之前的文章,希望未来能和大家共同探讨技术。文章目录Spring是什么?Spring的优点IOC概述基于 xml 配置方式注解方式AOP概述包含的基本概念Spring AOP实现Spring是什么?Spring是一个轻量级的,开源的,非侵入式的,IOC、AOP的 Java 开发框架.
2021-12-26 16:35:07 1454 7
原创 用5分钟让你了解 JVM 垃圾收集算法
大家好,我是Morning,在CSDN写文,分享一些Java基础知识,一些自己认为在学习过程中比较重要的东西,致力于帮助初学者入门,希望可以帮助你进步。感兴趣的欢迎关注博主,和博主一起学习Java知识。大家还可以去专栏查看之前的文章,希望未来能和大家共同探讨技术。文章目录标记-清除算法可达性分析算法引用计数算法标记-复制算法标记-压缩算法分代收集算法增量收集算法标记-清除算法 这个算法是最早出现也是最基础的垃圾收集算法,就像它的名字一样,这个算法分为标记 、清除两个步骤。总的来说就是,标记所有.
2021-12-21 17:37:04 827 7
原创 Java集合框架之Set,Map
大家好,我是Morning,在CSDN写文,分享一些Java基础知识,一些自己认为在学习过程中比较重要的东西,致力于帮助初学者入门,希望可以帮助你进步。感兴趣的欢迎关注博主,和博主一起学习Java知识。大家还可以去专栏查看之前的文章,希望未来能和大家共同探讨技术。文章目录Set接口HashSet散列表TreeSetMap接口HashMap负载因子TreeMap书接上回,这 一篇,一起学习Set,Map接口,和它的实现类。Set接口set接口等同于Collection接口,不过其方法的行为有更严.
2021-12-19 20:40:40 1333 10
原创 快来看,快来看,关于Java集合,你想知道的,这里都有
大家好,我是Morning,在CSDN写文,分享一些Java基础知识,一些自己认为在学习过程中比较重要的东西,致力于帮助初学者入门,希望可以帮助你进步。感兴趣的欢迎关注博主,和博主一起学习Java知识。大家还可以去专栏查看之前的文章,希望未来能和大家共同探讨技术。文章目录概述Collection接口迭代器List接口ArrayListVectorLinkedList概述我们为什么要学习集合呢?说起集合就不得不说数组,那有数组了为什么还需要集合呢,当然是集合更加的强大了。如果说我们需要保存一组.
2021-12-15 20:48:58 982 5
原创 浅谈String、StringBuffer、StringBuilder的区别
大家好,我是Morning,在CSDN写文,分享一些Java基础知识,一些自己认为在学习过程中比较重要的东西,致力于帮助初学者入门,希望可以帮助你进步。感兴趣的欢迎关注博主,和博主一起学习Java知识。大家还可以去专栏查看之前的文章,希望未来能和大家共同探讨技术。今天和大家一起来探讨一个很基础的知识,可能在之前你了解的不是很清晰,希望这篇文章可以帮助到你。String是Java中很基础的一个引用类型,它封装了对一个字符串对象的创建和一些基本操作。相信大家对这个类有一定的了解,同样Java提供的常用的.
2021-12-13 19:21:45 618
原创 LeetCode第一题——两数之和详解
题目难度:简单题目描述:给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出和为目标值 target 的那两个整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。示例:输入:nums = [2,7,11,15], target = 9输出:[0,1]解释:因为 nums[0] + nums[1] == 9 ,所以返回 [0, 1] (也可以是 [1,0] )输入:nums = [3,
2021-08-10 16:29:16 207
原创 Java基础——数组
数组是一种线性结构的数据结构。线性结构在内存中是连续 的。数组特点 :连续 ,每个元素都有下标 ,可以快速查找 ,但是从中间添加,删除就比较麻烦数组是相同数据类型元素的集合数组本身是引用数据类型,即对象。但是数组可以存储基本数据类型,也可以存储引用数据类型。1. 声明数组的声明的两种方式:数据类型 [] 数组名字 例如:int [] a;数据类型 数组的名字 [] 例如:int a[];注意:在Java语言中两种声明方法没有任何区别,但是建议大家用第一种,
2021-05-31 16:39:54 156 3
原创 jQuery语言基本知识
jQueryJQuery语言是对JavaScript做了轻量级的封装,简化了JavaScript语法JQuery就相当于JavaScript Query,是JavaScript衍生出来的一种脚本语言jQuery相较于JavaScript优点是语法简单但功能强大,是在JavaScript的基础上进行的封装,基础语法还是JavaScript的语法,但是简化了JavaScript的语法。用JQuery语言获得的标签的对象就是通过jQuery()或$()方法包装的DOM对象后产生的对象(DOM对象转换为jQ
2021-03-18 17:47:02 424 1
原创 用Html写网页的基本知识(1)
第一步一个声明,写在文档最前面<!DOCTYPE html>第二步html标签,网页中所有的内容都写在html标签内。第三步( html标签内的东西)head标签,里面可以添加网页内容,还可以设置网页标题,首先设置网页字符集编码 ,为了方便浏览器识别字符<meta charset="utf-8" />title标签来设置标题<title>我的网页</title><!--网页标题-->可以用以下的代码来添加一些内容,提供给搜
2020-11-03 20:10:39 513
原创 C语言死循环,“贪心法”
死循环问题实例int i;int a[N];for(i = 0; i<=N; i++){a[i] = 0;}根据编译软件的不同,这段代码出现的问题也有不同,一般如果出现错误,原因如下:以上这段代码,编译器给变量分配内存时变量i的内存会在数组a[N]的后边,循环内给数组内的变量赋值是从前往后写入地址的,当i=N时已经写到编译器给i分配的那块地址上了,循环有又将这块地址上的值写为了0,所以循环又重新开始了。就是一个死循环。(N是数组大小,但是i是从0开始的所以数组最后一个值应该是a[N-1
2020-10-07 13:15:20 383
原创 Windows核心编程笔记——(3.1)跨进程边界共享内核对象
1.使用对象句柄继承只有在进程之间有一个父-子关系时,才可以使用对象句柄继承。当父进程创建内核对象时必须向系统指出它希望这个对象的句柄是可继承的。父进程先分配一个SECURITY_ATTRIBUTES结构体SECURITY_ATTRIBUTES sa;sa.nLength = sizeof(sa);sa.lpSecurityDescriptor = NULL;sa.bInheritHandle = TRUE;//TRUE:可继承,句柄表中标志位是1;FALSE:不可继承,标志位是0.HAN
2020-05-19 20:56:31 319
原创 Windows核心编程笔记——(3)内核对象
每个内核对象都只是一个内存块,它由操作系统内核分配,并只能由操作系统内核访问,这个内存块是一个数据结构,其成员维护着于对象相关的信息。少数成员是所有对象都有的,像安全描述符和使用计数等;大多数成员是特有的,像进程对象的进程ID,文件对象的字节偏移量。由于内核对象的数据结构只能由操作系统内核访问,所以应用程序不能再内存中定位这些数据结构并直接更改其内容。所以Windows提供了一组函数,让应用程序可以操作这些内核对象,调用一个会创建内核对象的函数后,函数会返回一个句柄,为了让操作系统知道我们要对那个内核对象
2020-05-10 20:24:34 150
原创 Windows核心编程笔记——(2)字符和字符串处理
人们一直将文本字符串编码成一组以0结尾的单字节字符,但一个字节最多只能表示256个符号,这不能表示更多的符号,微软为了能为应用程序支持不同的字体,双字节字符集应运而生。Windows Vista操作系统中,每个Unicode字符都使用UTF-16(16位编码),UTF是Unicode转换格式,UTF-16将每个字符编码为2个字节(或者说16位),全球各地使用的大多数语言中,每个字符很容易用一个1...
2020-05-03 18:04:09 182
原创 Windows核心编程笔记——(1)错误处理
Windows函数调用失败时返回的值是和函数返回值的数据类型是有关的数据类型函数调用失败(除传参错误,程序员书写错误等)返回的值VOID一般不会失败BOOL函数失败返回值为0,否则返回-个非0值,稳妥的做法为判断值是否为FALSEPVOID调用失败返回NULL,否则返回一个数据块的内存地址HANDLE函数失败返回NULL;否则,返回-个可操作的对象,...
2020-05-01 14:02:51 242
原创 Copy函数strcpy memcpy strncpy memmove 的源码实现
char * strncpy( char *DstString, const char *SrcString, size_t Count){ //通过其他指针来操作这块地址 char *String = DstString; //复制 for (S...
2020-04-10 17:28:47 198 1
原创 C++11新特性Override和Final
新特性能够避免虚函数重写错误或错误继承类当你不想让一个类有派生类时就用Final定义类,这样在创建这个类的派生类时就会出现错误用final也可以定义虚函数,可以阻止虚函数被重写有一点需要注意,这个关键词不能修饰非虚函数override用于检查虚函数重写是是否写对有时你可能在派生类中不小心写错了虚函数名或传参类型程序就会认为你写了一个新的函数,可你的本意是重写虚函数,你就可以用ov...
2020-03-30 15:21:45 257
原创 C++类——深浅拷贝
1.浅拷贝浅拷贝字面意思就是浅层次的拷贝,就是简单的把值拷贝过去下面我们来看一下浅拷贝的代码class Base{public: Base(const char* str) { _str = new char[strlen(str) + 1]; strcpy(_str, str); } Base(const Base& s) :_str(s._str) {...
2020-03-27 19:39:00 181
原创 C++类的继承方式和菱形继承
C++类的继承方式有三种:1.公有(public)继承;2.私有(private)继承;3.保护(protected)继承;1.公有(public)继承写一个小代码来说明一下class Father{public: int Public() { cout << "1" << endl; return 1; }protected: int Pro...
2020-03-25 20:31:56 270
原创 C++特性——多态性
这里写自定义目录标题新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入你好! 这是你第一次使用 Markdown...
2020-03-25 00:23:45 359
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人