`
文章列表

Java知识问题汇总

    博客分类:
  • Java
1、面向对象的基本特征: 答:三个基本特征:封装(Encapsulation),继承(Inheritance),多态(polymorphism) 2、方法重载和方法重写的概念和区别 3、接口和内部类、抽象类的特性 4、文件读写的基本类 5、串行化的注意事项以及如何实现串行化 6、线程的基本概念、线程的基本状态以及状态之间的关系 7、线程的同步、如何实现线程的同步 8、几种常用的数据结构及内部实现原理。 9、Socket通信(TCP、UDP区别及Java实现方式) 10、Java的事件委托机制和垃圾回收机制 11、JDBC调用数据库的基本步骤 12、解析XML文件的几种方式和 ...

svn常用命令

1、SVN一次性 add 所有带'?'号的文件 svn st | grep ? | awk '{print $2}' | xargs svn add 2、SVN一次性 ci 所有带'AMD'的文件 svn st | grep ^[AMD] | awk '{print $2}' | grep [^+]| xargs svn ci -m "your comment..." 3、忽略不想提交的文件或目录 svn propedit svn:ignore . 如下: .settings *.log target .project .classpath 4、若想 ...
转自:http://shenhaolaoshi.blog.sohu.com/ 下面是一位朋友的问题,其实每天都有不少同学和朋友向我提问各种学习数据分析、数据挖掘、统计分析等方面的问题,有时候真的很难仔细回答。其实,每个人都有自己的学习路径,还有自己 ...
由于现在越来越多的人使用Mac Book,故笔者在本章中增加了在Mac OS X上安装与配置Hadoop的内容,供使用Mac Book的读者参考。 2.2.1 安装Homebrew Mac OS X上的Homebrew是类似于Ubuntu下apt的一种软件包管理器,利用它可以自动下载和安装软件包,安装Homebrew之后,就可以使用Homebrew自动下载安装Hadoop。安装Homebrew的步骤如下: 1)从Apple官方下载并安装内置GCC编译器—Xcode(现在版本为4.2)。安装Xcode主要是因为一些软件包的安装依赖于本地环境,需要在本地编译源码。Xcode的下载地址为http ...
可重入函数主要用于多任务环境中,一个可重入的函数简单来说就是可以被中断的函数,也就是说,可以在这个函数执行的任何时刻中断它,转入OS调度下去执行另外一段代码,而返回控制时不会出现什么错误;而不可重入的函数由于使用了一些系统资源,比如全局变量区,中断向量表等,所以它如果被中断的话,可能会出现问题,这类函数是不能运行在多任务环境下的。 目录 简介 可重入函数也可以这样理解,重入即表示重复进入,首先它意味着这个函数可以被中断,其次意味着它除了使用自己栈上的变量以外不依赖于任何环境(包括static),这样的函数就是purecode(纯代码)可重入,可以允许有该函数的多个副本在运行,由于它们使用的是 ...
其实两者都可以让线程暂停一段时间,但是本质的区别是一个线程的运行状态控制,一个是线程之间的通讯的问题: 在java.lang.Thread类中,提供了sleep(), 而java.lang.Object类中提供了wait(), notify()和notifyAll()方法来操作线程 sleep()可以将一个线程睡眠,参数可以指定一个时间。 而wait()可以将一个线程挂起,直到超时或者该线程被唤醒。     wait有两种形式wait()和wait(milliseconds). sleep和wait的区别有:   1,这两个方法来自不同的类分别是Thread和Object   2,最主要是sle ...
QPS、PV和需要部署机器数量计算公式(转) 术语说明: QPS = req/sec = 请求数/秒 【QPS计算PV和机器的方式】 QPS统计方式 [一般使用 http_load 进行统计] QPS = 总请求数 / ( 进程总数 *   请求时间 ) QPS: 单个进程每秒请求服务器的成功次数 ...
B-tree(多路搜索树,并不是二叉的)是一种常见的数据结构。使用B-tree结构可以显著减少定位记录时所经历的中间过程,从而加快存取速度。按照翻译,B 通常认为是Balance的简称。这个数据结构一般用于数据库的索引,综合效率较高。 另外还有一种与此类似的树结构叫B+树,像 Berkerly DB , sqlite , mysql 数据库都使用了B+树算法处理索引。 B+和B-(即B)是因为每个结点上的关键字不同。一个多一个,一个少一个。 对于B+树,其结点结构与B-tree相同,不同的是各结点的关键字和可以拥有的子结点数。如m阶B+树中,每个结点至多可以拥有m个子结点。非根结点至少有[m/ ...
1, 关于阻塞的概念 阻塞(Block)这个概念。当进程调用一个阻塞的系统函数时,该进程被置于睡眠(Sleep)状态,这时内核调度其它进程运行,直到该进程等待的事件发生了(比如网络上接收到数据包,或者调用sleep指定的睡眠时间到了)它才有可能继续运行。与睡眠状态相对的是运行(Running)状态,在Linux内核中,处于运行状态的进程分为两种情况: 正在被调度执行。CPU处于该进程的上下文环境中,程序计数器(eip)里保存着该进程的指令地址,通用寄存器里保存着该进程运算过程的中间结果,正在执行该进程的指令,正在读写该进程的地址空间。 就绪状态。该进程不需要等待什么事件发生,随时都可以执行 ...

JSONP

  JSONP(JSON with Padding)是资料格式 JSON 的一种“使用模式”,可以让网页从别的网域要资料。另一个解决这个问题的新方法是跨来源资源共享。 由于同源策略,一般来说位于 server1.example.com 的网页无法与不是 server1.example.com 的服务器沟通,而 HTML 的 <script> 元素是一个例外。利用 
对于运行在网络上的MIS系统而言,处理数据的是整个系统的主要任务,翻开程序我们可以看到,80%以上的代码都在处理数据的CRUD操作。采用一种什么样的框架结构,能够使得处理数据的操作变得简单且易理解,这是大部分开发者尤其是架构设计者一直以来思考的一个问题。       REST(Representational State Transfer)是一种编程风格,特别是针对网络应用的设计和开发,采用REST可以显著降低开发的复杂性,提高系统的可伸缩性。       REST是一种独特的编程风格,与MVC强调的角色分层概念不同,REST强调使用统一的规则来规范对资源的操作,两者互为补充,相符相成,使 ...
转载自:http://blog.csdn.net/zhangerqing/article/details/8194653我就简化一下,呵呵。。。设计模式分为三大类:结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。   参考网址: http://www.cnblogs.com/forlina/category/306277.html http://blog.csdn.net/LoveLion  
单例模式限定为不是全用静态函数实现的。 1。使用的方便性:如果需要初始化工作,单例模式可以在构造函数里面完成,全静态函数的类需要一个额外的函数来完成初始化工作,而且使用者如果没有调用这个initialize函数,那么后续的操作就会有问题,构造函数会被默认调用,所以使用起来比较简单,对使用者做出了最少的假设。 2。初始化时机:单例模式初始化比较灵活,可以在需要的时候初始化,而全静态函数必然导致成员全为静态成员,静态成员是在编译时就初始化好了。如果初始化成本比较昂贵,并且程序里面未必一定使用这个类,那这将是单例模式的一个很大优势。顺便说一下全局变量,全局变量的初始化顺序是未指定的。 例如 ...
摘要:本文主要通过分析Java内存分配的栈、堆以以及常量池详细的讲解了其的工作原理。栈的优势是,存取速度比堆要快,仅次于寄存器,栈数据可以共享。 本文主要通过分析Java内存分配的栈、堆以以及常量池详细的讲解 ...
  Spring 框架的设计理念与设计模式分析 参见:http://www.cnblogs.com/sunwei2012/archive/2010/12/09/1901184.html 或:http://developer.51cto.com/art/201006/205212.htm   Spring中的设计模式 参见:http://www.goldendoc.org/category/spring/  
Global site tag (gtag.js) - Google Analytics