一、为什么引入友元机制? 总的来说就是为了让非成员函数即普通函数或其他类可以访问类的私有成员,这确实破坏了类的封装性和数据的隐蔽性,但为什么要这么做呢? (c++ primer:尽管友元被授予从外部访问类的私有部分的权限,但它并不与面向对象的编程思想相悖,相反,他们提高了公有接口的灵活性)。要理解这 ...
分类:
编程语言 时间:
2018-06-14 11:24:27
阅读次数:
191
前言:学习过面向对象语言(java、c++)的童鞋都了解面向对象的概念,也肯定知道面向对象语言的特征:封装、继承和多态,但JavaScript并非面向对象,而是基于对象,这些概念我们无法直接应用到JavaScript的对象机制中,这节我们主要学习JavaScript开发者是如何曲线救国实现面向对象语 ...
分类:
编程语言 时间:
2018-06-14 11:24:42
阅读次数:
196
##1 sum_file = 0 with open('a.txt',encoding='utf-8') as f: for line in f: sum_file += len(line) print(sum_file) with open('a.txt',encoding='utf-8') as ...
分类:
编程语言 时间:
2018-06-14 11:30:16
阅读次数:
182
1.字典的定义 dictionary(字典) 是除列表以外Python之中最灵活的数据类型,字典同样可以用来存储多个数据, 通常用于存储描述一个物体的相关信息。 字典和列表的区别:列表是有序的对象集合,字典是无序的对象集合。 字典用 { } 定义,字典使用键值对存储数据,键值对之间使用逗号分隔,键k ...
分类:
编程语言 时间:
2018-06-14 11:31:45
阅读次数:
160
代码路径:https://github.com/prophetss/epoll-event 之前实现了一个简单高效的hashtable(点这里),之后一直想利用它再延伸一些功能,后来偶然看到一个hashtable与epoll事件的结合感觉效率很高所以自己尝试着实现了下。大体思想是将epoll接到的每 ...
分类:
编程语言 时间:
2018-06-14 11:31:55
阅读次数:
425
生产者消费者是通过一个容器来解决生产者和消费者的强耦合问题。生产者和消费者不直接通讯,而通过阻塞队列进行通信。阻塞队列就相当一个缓冲区,平衡了生产者和消费者的处理能力。 ...
分类:
编程语言 时间:
2018-06-14 11:32:30
阅读次数:
162
队列是一种数据结构,是数据安全的,数据安全的。队列能干的事情列表都能干。列表是线程不安全的,所以可以说队列是针对多线程出现的。 数据结构是用来存储数据用的,只不过各种数据结构的存储方式不同。比如:集合、队列、映射 列表:按索引值存储 字典:按key值的哈希表存储 list.pop() #按索引删除 ...
分类:
编程语言 时间:
2018-06-14 11:32:46
阅读次数:
149
1.打开Eclipse,选择菜单栏的file》New》Dynamic Web Project 弹出窗口如下 2.点击Next》Next进入下面界面: 3.想要生成web.xml,就把Generate web.xml deployment descriptor前的选择框打勾 然后点击Finish,一个 ...
分类:
编程语言 时间:
2018-06-14 11:32:55
阅读次数:
225
守护线程 java中有两种线程:一种是主线程,一种是守护线程。 用户线程是指:用户自定义创建的线程,主线程停止,用户线程不会停止。 守护线程:当进程不存在或主线程停止,守护线程也会停止。 使用setDaemon(true)方法设置为守护线程 多线程的运行状态: 线程从创建、运行到结束总是处于下面五个 ...
分类:
编程语言 时间:
2018-06-14 11:33:22
阅读次数:
169
1. 入门概述 专注于快速方便的开发单个个体微服务; :关注全局的微服务协调治理框架,它将SpringBoot开发的一个个单体微服务整合并管理起来, 为各个微服务之间提供配置管理,服务发现,断路器,路由,微代理,事件总线,全局锁,决策竞选,分布式会话等等集成服务; 1.1 Dubbo和SpringC ...
分类:
编程语言 时间:
2018-06-14 11:33:38
阅读次数:
214
首先每一个类在实例化的时候都会产生一个.class文件。而Class对象既是将.class文件读入内存时,为它创建一个Class对象。 反射就是对Class对象进行操作。 1.Object 类提供一个返回Class类对象的方法getClass() 2.利用“类.class”取得 3.利用Class类 ...
分类:
编程语言 时间:
2018-06-14 11:33:47
阅读次数:
147
自从Lele开发了Rating系统,他的Tetris事业更是如虎添翼,不久他遍把这个游戏推向了全球。 为了更好的符合那些爱好者的喜好,Lele又想了一个新点子:他将制作一个全球Tetris高手排行榜,定时更新,名堂要比福布斯富豪榜还响。关于如何排名,这个不用说都知道是根据Rating从高到低来排,如 ...
分类:
编程语言 时间:
2018-06-14 11:33:55
阅读次数:
158
一.JSON简介:1.JSON(javaScriptObjectNotation)是一种轻量级的数据交换格式;2.JSON数据作为目前网络中主流的数据传输格式之一,应用十分广泛;3.JSON可以表示的数据:(1)对象:对象表示为”{}”扩起来的内容,数据结构为{key:value,key:value,....}的键值对的结构例如:{“name”:”zhangsan”,”age”:20}(2)数组:
分类:
编程语言 时间:
2018-06-14 11:34:39
阅读次数:
183
1 package com.zhangpn.aspect; 2 3 import org.aspectj.lang.ProceedingJoinPoint; 4 import org.aspectj.lang.annotation.After; 5 import org.aspectj.lang.a ...
分类:
编程语言 时间:
2018-06-14 11:35:16
阅读次数:
152
概述 面向过程:根据业务逻辑从上到下写垒代码 函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可 面向对象:对函数进行分类和封装,让开发“更快更好更强...” 面向过程编程最易被初学者接受,其往往用一长段代码来实现指定功能,开发过程中最常见的操作就是粘贴复制,即:将之前实现的代码块 ...
分类:
编程语言 时间:
2018-06-14 11:37:50
阅读次数:
173
C语言是面向过程的,而C++是面向对象的 C和C++的区别: C是一个结构化语言,它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现过程(事务)控制)。 C++,首要考虑的是如何构造一个对象模型,让这个模型能够契合与之对应的问题域, ...
分类:
编程语言 时间:
2018-06-14 11:38:01
阅读次数:
141
信号量是用来控制线程并发数的一内置计数器,每当调用acquire()时-1,调用release时+1,计数器不能小于0。 semaphore=threading.Semaphore(5) #设置信号量为5 4把锁用来做同步: 1)同步锁、互斥锁:lock() 2)递归锁:Rlock() 3)信号量: ...
分类:
编程语言 时间:
2018-06-14 11:38:51
阅读次数:
181
C语言是面向过程的,而C++是面向对象的 C和C++的区别: C是一个结构化语言,它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现过程(事务)控制)。 C++,首要考虑的是如何构造一个对象模型,让这个模型能够契合与之对应的问题域, ...
分类:
编程语言 时间:
2018-06-14 11:39:31
阅读次数:
195
主要内容来自MIT6.031 Software Construction课程及HIT 软件构造课程。 Java的数据类型有两种,分为基本数据类型(primitive types)及对象数据类型(object types)。例如int ,float,boolean等类型就是基本数据类型,而String ...
分类:
编程语言 时间:
2018-06-14 11:41:35
阅读次数:
180
很多小伙伴说想学习想学习但是没有学习书籍,我给大家分享一大波学习书籍,具体的可以自己往下翻 ? 《“笨办法学”Python3》 Zed Shaw?著 (2018年5月) 本书是基于Python 3.6版本编写的。 百万粉丝程序员带你轻松入门Python语言! 手机扫码看视频,学习更轻松! 5小时的完 ...
分类:
编程语言 时间:
2018-06-14 11:41:50
阅读次数:
274