Java 设计模式 – 外观模式

外观模式的作用: 松散耦合,外观模式松散了客户端与子系统的耦合关系,让子系统内部的模块能更容易扩展和维护。 简单易用,外观模式让子系统更加易用,客户端不再需要了解子系统内部的实现,也不需要跟众多子系统内部的模块进行交...

JAVA设计模式之门面模式(外观模式)

医院的例子 现代的软件系统都是比较复杂的,设计师处理复杂系统的一个常见方法便是将其"分而治之",把一个系统划分为几个较小的子系统。如果把医院作为一个子系统,按照部门职能,这个系统可以划分为挂号、门诊、划价、化验、收费、取药...

Windows下如何查看某个端口被谁占用

开发时经常遇到端口被占用的情况,这个时候我们就需要找出被占用端口的程序,然后结束它,本文为大家介绍如何查找被占用的端口。 1、打开命令窗口(以管理员身份运行) 开始—->运行—->cmd,或者是 window+R 组合键,调出命令窗口...

C 矩阵交换行

描述 给定一个 5*5 的矩阵(数学上,一个 r×c 的矩阵是一个由 r 行 c 列元素排列成的矩形阵列),将第 n 行和第 m 行交换,输出交换后的结果。 输入输入共 6 行,前 5 行为矩阵的每一行元素, 元素与元素之间以一个空格分开。 第 ...

C++ 字符、字符串、字符数组、字符串指针、指针数组

一、字符指针、字符数组 字符指针字符串指针变量本身是一个变量,用于存放字符串的首地址。而字符串本身是存放在以该首地址为首的一块连续的内存空间中并以 \0 作为串的结束。 char *ps="C Language"; 顺序是:1.分配内存给字符...

C++ 虚函数和纯虚函数的区别

首先:强调一个概念 定义一个函数为虚函数,不代表函数为不被实现的函数。 定义他为虚函数是为了允许用基类的指针来调用子类的这个函数。 定义一个函数为纯虚函数,才代表函数没有被实现。 定义纯虚函数是为了实现一个接口,起到一...

Java 中 this 和 super 的用法总结

this this 是自身的一个对象,代表对象本身,可以理解为:指向对象本身的一个指针。 this 的用法在 Java 中大体可以分为3种: 1.普通的直接引用 这种就不用讲了,this 相当于是指向当前对象本身。 2.形参与成员名字重名,...

什么是虚方法?

内容 虚方法可以有实现体,若一个实例方法的声明中含有 virtual 修饰符,则称该方法为虚方法。使用了 virtual 修饰符后,不允许再有 static、abstract 或者 override 修饰符。 简单工厂模式中虚方法代码: //用于...

CSS 带搜索导航栏

本文为大家介绍如何使用 CSS 创建一个带搜索的导航栏。 以下实例均是响应式的。 可以先看下效果图: 创建一个搜索栏 HTML 代码 <div class="topnav"> <a class="active" href="#home">主页</a> <a ...

取余和取模的区别

通常取模运算也叫取余运算,它们返回结果都是余数 .rem 和 mod 唯一的区别在于: 当 x 和 y 的正负号一样的时候,两个函数结果是等同的;当 x 和 y 的符号不同时,rem 函数结果的符号和 x 的一样,而 mod 和 y 一样。 这是由于这两个...

查看本机 ssh 公钥,生成公钥

查看 ssh 公钥方法: 1.通过命令窗口 a. 打开你的 git bash 窗口 b. 进入 .ssh 目录:cd ~/.ssh c. 找到 id_rsa.pub 文件:ls d. 查看公钥:cat id_rsa.pub 或者 vim id_rsa.pub 如图: 2.或者你也可以直接输入命令 :cat ...

Python 文档字符串(DocStrings)

DocStrings 文档字符串是一个重要工具,用于解释文档程序,帮助你的程序文档更加简单易懂。 我们可以在函数体的第一行使用一对三个单引号 ''' 或者一对三个双引号 """ 来定义文档字符串。 你可以使用 __doc__(注意双下划线)调用函数...

Python 爬虫介绍

一、什么是爬虫 爬虫:一段自动抓取互联网信息的程序,从互联网上抓取对于我们有价值的信息。 二、Python爬虫架构 Python 爬虫架构主要由五个部分组成,分别是调度器、URL管理器、网页下载器、网页解析器、应用程序(爬取的有...

C/C++ 获取键盘事件

Windows 系统下的 vs 中可以使用 _kbhit() 函数来获取键盘事件,使用时需要加入 conio.h 头文件,例: 实例 #include <conio.h> #include <iostream> using namespace std; int main() { int ch; whil...

float 与 double 类型区别

float 单精度浮点数在机内占 4 个字节,用 32 位二进制描述。 double 双精度浮点数在机内占 8 个字节,用 64 位二进制描述。 浮点数在机内用指数型式表示,分解为:数符,尾数,指数符,指数四部分。 数符占 1 位二进制,表示数的...

Java 接口和多态

一、接口 1.1 接口的概述 接口是功能的集合,同样可看做是一种数据类型,是比抽象类更为抽象的类 。 接口只描述所应该具备的方法,并没有具体实现,具体的实现由接口的实现类(相当于接口的子类)来完成。这样将功能的定义与实现...

结构体变量和结构体类型的定义

1.结构体类型定义 定义方式1: Typedef struct LNode { int data; // 数据域 struct LNode *next; // 指针域 } *LinkList; 定义方式2: struct LNode { int data; // 数据域 struct LNod...

Python append() 与深拷贝、浅拷贝

深浅拷贝 在 Python 中,对象赋值实际上是对象的引用。当创建一个对象,然后把它赋给另一个变量的时候,Python 并没有拷贝这个对象,而只是拷贝了这个对象的引用,我们称之为浅拷贝。 在 Python 中,为了使当进行赋值操作时,两个变...

C# 中的多态性

相信大家都对面向对象的三个特征封装、继承、多态很熟悉,每个人都能说上一两句,但是大多数都仅仅是知道这些是什么,不知道 CLR 内部是如何实现的,所以本篇文章主要说说多态性中的一些概念已经内部实现的机理。 一、多态的概念 首...

PHP 中 include 和 require 的区别详解

1、概要 require() 语句的性能与 include() 相类似,都是包括并运行指定文件。不同之处在于:对 include() 语句来说,在执行文件时每次都要进行读取和评估;而对于 require() 来说,文件只处理一次(实际上,文件内容替换 require() ...