“全栈2019”Java第八十八章:接口中嵌套接口的应用场景

难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 “全栈2019”Java第八十八章:接口中嵌套接口的应用场景 下一章 “全栈2019”Java第八十九章:接口中能定义内部类吗? 学习小组 加入同步学习小组,共同交流与进步。 方式一:关注头条号Gorhaf,私信“Java学习小组”。 方式二:关注公众号Gorhaf,回复“Java学习小组”。 全栈工程师学习计划 关注我们,加入“全栈工程师学
分类: 其他 发布时间: 12-30 23:18 阅读次数: 0

PKU 百炼OJ 奖学金

http://bailian.openjudge.cn/ss2017/A/ #include<iostream> #include <cmath> #include <math.h> #include <vector> #include <algorithm> struct Student { int num; int chinese; int math; int english; int getAllGrade() { return chinese + math + engl
分类: 其他 发布时间: 12-30 23:18 阅读次数: 0

vue语法小练习

实现功能:新增/删除 学生 <html> <head> <script src="https://cdn.staticfile.org/vue/2.2.2/vue.min.js"></script> </head> <body> <div id="app"> <fieldset> <legend>学生信息新增</legend> <div> <span>姓名</span> <
分类: 其他 发布时间: 12-30 23:17 阅读次数: 0

摆脱第三方库的MFC绑架

建立MFC DLL工程,新建C++类,将第三方库的功能封装到类的接口中,将类导出到dll或者lib中,供其他开发方式使用即可. Windows的dll相当于Linux的.so文件,是一种动态库文件.与.so不同的是,dll生成后,同目录下也会有.lib文件,并不是静态库文件,只是用来辅助dll链接. 以下是工作要点: 建立MFC Dll工程. 这里: 使用共享MFC DLL 的规则DLL 带静态链接MFC的规则DLL MFC扩展DLL 要选第二个.1是将MFC内部库动态链接,2是将MFC内部库
分类: 其他 发布时间: 12-30 23:17 阅读次数: 0

[C/C++常见笔试面试题] 程序设计基础 - 面向对象相关、虚函数、编程技巧篇

13 面向对象相关 面向对象思想是程序设计历史上一次伟大的创新,面向对象的提出极大地提高了程序设计的效率,为程序设计的重用性奠定了坚实的基础,面向对象思想已经广泛应用在现今主流的编程语言中,如C++、Java、C#等。 13.1 面向对象与面向过程有什么区别? 面向对象 面向对象是把数据及对数据的操作方法放在一起,作为一个相互依存的整体,即对象。对同类对象抽象出其共性,即类,类中的大多数数据,只能被本类的方法进行处理。类通过一个简单的外部接口与外界发生关系,对象与对象之间通过消息进行通信。程序
分类: 其他 发布时间: 12-30 23:17 阅读次数: 0

2 物理层

TCP/IP的最底层是负责数据传输的硬件。这种硬件就相当于以太网或电话线等物理层的设备。 2.1 通信方式 根据信息在传输线上的传送方向,分为以下三种通信方式: 单工通信:单向传输 半双工通信:双向交替传输 全双工通信:双向同时传输 2.2 带通调制 模拟信号是连续的信号,数字信号是离散的信号。带通调制把数字信号转换为模拟信号。
分类: 其他 发布时间: 12-30 23:17 阅读次数: 0

快速求解 分解因子和 PE problem21

Amicable numbers Problem 21 Let d(n) be defined as the sum of proper divisors of n (numbers less than n which divide evenly into n). If d(a) = b and d(b) = a, where a ≠ b, then a and b are an amicable pair and each of a and b are called amicable num
分类: 其他 发布时间: 12-30 23:17 阅读次数: 0

深入理解java虚拟机----第十一章晚期优化

11.1 概述 在部分的商用虚拟机(Sun HotSpot、IBM J9)中,Java 程序最初是通过解释器(Interpreter)进行解释执行的,当虚拟机发现某个方法或代码块的运行特别频繁时,就会把这些代码认定为“热点代码” (Hot Spot Code)。为了提高热点代码的执行效率,在运行时,虚拟机将会把这些代码编译成与本地平台相关的机器码,并进行各种层次的优化,完成这个任务的编译器称为即时编译器(Just In Time Compiler,下文中简称 JIT 编译器)。 即时编译器并不
分类: 其他 发布时间: 12-30 23:17 阅读次数: 0

深入理解java虚拟机----java内存模型与线程

12.1 概述 衡量一个服务性能的高低好坏,每秒事务处理数是最重要的指标之一,它 着一秒内服务端平均能响应的请求总数,而TPS的与程序的并发能力又有非常密切的关系。 12.2 硬件的效率与一致性 因为有缓存一致性,所以要有一些操作来保证安全。 12.3 java内存模型 java虚拟机规范中试图定义一种java内存模型来屏蔽掉各种硬件和操作系统的内存访问差异,以实现让java程序在各种平台下都能达到一致的内存访问效果。 定义java内存模型并非一件容易的事情,这个模型必须定义得足够严谨,才能让
分类: 其他 发布时间: 12-30 23:16 阅读次数: 0

深入理解java虚拟机----第十三章线程安全与锁优化

这一部分和java并发编程实战中讲的很多东西一样,所以可以对照着看。 13.1 概述 对于这部分的主题“高效并发”来讲,首先需要保证并发的正确性,然后在此基础上实现高效。本章先从如何保证并发的正确性和如何实现线程安全讲起。 13.2 线程安全 当多个线程访问一个对象时,如果不用考虑这些线程在运行时环境下的调度和交替执行,也不需要进行额外的同步,或者在调用方法进行任何其他的协调操作,调用这个对象的行为都可以获得正确的结果,那么这个对象是线程安全的。 13.2.1 java语音中的线程安全 这里讨
分类: 其他 发布时间: 12-30 23:16 阅读次数: 0

深入理解计算机系统----第一张计算机系统漫游

转载地址 https://www.jianshu.com/p/f0fd1473344e 信息的表示 信息就是位+上下文,系统中的所有信息,包括磁盘文件,程序,存储器中数据以及网路传输的数据,都是一串位表示的.区分不同数据对象的唯一方法就是判断其上下文. 比如11011101这串二进制,可以表示221,在java的class文件里可能就代表一个JVM指令. 程序的编译 一个简单的C语言程序来说,一般要经过预处理器、编译器、汇编器和链接器的处理,才能被翻译成一段可执行的二进制文件。例如一段c语言h
分类: 其他 发布时间: 12-30 23:16 阅读次数: 0

深入理解计算机系统----第二章 信息的表示和处理

1.信息存储 系统将8位的块作为最小的可寻址存储器单位,机器级程序系统看成一个大的数组,然后通过地址来获得存储器中的这些块的内容。 数据在计算机中的存储都是用二进制,不过二进制不易表示,一般我们用十六进制来表示。如八位的十六进制范围为00~FF。 计算机的字长代表其整数数据的大小,同时也是系统絮凝地址空间最大大小。 C语言中对布尔代数的操作有提供几种方式,比如&(与),|(或),~(取反),^(异或)。 2.整数表示 无符号数的编码,无符号数与有符号数的区别在于无符号数的最高位作为数值而不是符
分类: 其他 发布时间: 12-30 23:16 阅读次数: 0

深入理解计算机系统----程序的机器级表示

转载地址 https://www.jianshu.com/p/c60a9c2131c3 目 录 精通细节是理解更深和更基本概念的先决条件,这一章节首先讲解了C代码、汇编代码与机器代码的关系,再次重申了汇编的承上启下的重要作用。接着从IA32的细节一步步讲起,如何存储数据、如何访问数据、如何完成运算、如何进行跳转,在了解了这些细节以后告诉你我们常用的分支语句、循环语句是怎么完成了。在如何调用函数的部分,花费的篇幅较大,详细的讲解了栈帧结构,也让我们更好的了解了递归的过程。(其他方面还对数组、结构
分类: 其他 发布时间: 12-30 23:15 阅读次数: 0

深入理解计算机系统----第四章处理器体系结构

https://www.jianshu.com/p/15210eb3870d?open_source=weibo_search 原文地址 目录 学习事物是怎样工作的有其内在价值:处理器是如何工作的对于我们普通人来说一直是个秘密,我们将从零开始构建一个流水线处理器,为了实现这一处理器的软硬件,我们有大量的前提知识要学习,包括:指令系统、硬件设计背景知识(hcl)、以及流水线的通用原理。学习完这些内容以后我们才开始YY一个我们自己的86处理器。 本章内容 ※ YY一个指令集Y86:各种状态、指令集
分类: 其他 发布时间: 12-30 23:15 阅读次数: 0

深入理解计算机系统----第五章优化程序性能

转载地址https://www.jianshu.com/p/4586dc676807 编写运行的快的程序有三个因素:①选择合适的算法和数据结构;②理解编译器的能力,使用有效的方式让编译器能进行优化;③对于运算量特别大的程序,可能还需要进行任务分解。在这一过程中可能还需要对程序的可读性和运行速度进行权衡。 在阅读这一章节的过程中花费了大量的时间对我自己的自动办公软件进行了优化,算是学以致用。选择合适的算法和数据结构不在本章的讲解内容中,我们从编译器的能力和局限性讲起着重介绍几种提高程序运行速度的
分类: 其他 发布时间: 12-30 23:15 阅读次数: 0

深入理解计算机系统----第六章存储器层次结构

原文博客地址:https://www.jianshu.com/p/88c889e4fef3 目 录 在本章中,我们会先了解存储技术(SRAM\DRAM\ROM\旋转固态硬盘),描述这些存储器是如何被组织成层次结构的。接下来会谈到什么是拥有良好局部性的程序以及编写这样的程序需要注意的问题。然后我们开始探究本质,为什么说拥有良好局部性的程序会执行的更快。就要求我们要学习高速缓存,并教会大家理解程序的局部性的真正意义,使得你自己不仅仅遵守规则,而是了解其内部原理获取更大的自由。 1.1 存储技术 ①
分类: 其他 发布时间: 12-30 23:15 阅读次数: 0

深入理解计算机系统----第七章链接

原文链接 https://www.jianshu.com/p/7f27c0316355 目 录 链接是将各种不同文件的代码和数据部分收集(符号解析和重定位)起来并组合成一个单一文件的过程。本章节我们将要学习链接器工作的详细原理。通过对这一方面知识的学习,将有助于理解一些危险的编程错误、分离编译的过程、作用域的实现以及如何利用共享库等等。我们将静态链接和动态链接(加载时共享、运行时共享)两个大的方向讲起。废话不多说,开始飙车了。 1.1 编译驱动程序如何工作? 在我的raspberrypi上我创
分类: 其他 发布时间: 12-30 23:14 阅读次数: 0

深入理解计算机系统----第八章异常控制流

原文链接 https://www.jianshu.com/p/c8a6c4154219 目 录 每次从一条指令过渡到另外一条指令的过程称为控制转移,这样的一个控制转移序列叫做控制流,如果每条指令都是相邻的,这样的过渡就是平滑序列。如果一条指令与另外一条指令不相邻,这样突发性的过渡称为异常,也就是我们这一章要学到的异常控制流(Exceptional Contro Flow)。学习这些知识将有助于我们并发这一重要的概念,异常控制流其实发生在系统的各个层次,我们将从硬件层的ECF:异常、操作系统层的
分类: 其他 发布时间: 12-30 23:14 阅读次数: 0

深入理解计算机系统----第九章虚拟内存

原文链接 https://www.jianshu.com/p/e1b82b230917 虚拟存储器又叫做虚拟内存,我们现在的操作系统普遍都支持了虚拟内存,这样做是因为我们同时运行着太多的程序了,就目前我电脑的状态来看,我既要打开浏览器,又要听歌,可能同时还登陆的有QQ,如果不使用虚拟内存4G的内存空间很快就会被耗尽,而一旦没有了内存空间,其他程序就无法加载了。虚拟内存的出现就是为了解决这个问题,当一个程序开始运行的时候,其实是为每个程序单独创建了一个页表(这个以后讲),只将一部分放入内存中,以
分类: 其他 发布时间: 12-30 23:14 阅读次数: 0

arrayList源代码

好久不写博客啦 最近一直忙着面试,昨天面试官问我读没读过arraylist的源代码 瞬间蒙蔽,今天总结一下,以前感觉源代码都是好高大上的东西,今天自己结合百度读啦一下,发现源代码也并不难,最近会吧jdk中的源代码自己总结一下。 我用的是jdk1.7 这篇博客只总结主要的 构造器 add get set等方法 remove iterator contains 其余的不去总结。有兴趣可以自己去读一下 其实很简单的 我以前就是以为难从来没读过(逃。。)。 private static final
分类: 其他 发布时间: 12-30 23:13 阅读次数: 0