- 博客(23)
- 资源 (1)
- 收藏
- 关注
转载 JAVA 位运算
位移动运算符:例如:3 1)把3转换为二进制数字0000 0000 0000 0000 0000 0000 0000 0011,2)把该数字高位(左侧)的两个零移出,其他的数字都朝左平移2位,3)在低位(右侧)的两个空位补零。则得到的最终结果是0000 0000 0000 0000 0000 0000 0000 1100,转换为十进制是12。同理,>>表示右移. 右移一
2014-03-07 15:20:26 407
转载 cache高速缓冲存储器映射主存储器
cache的容量很小,它保存的内容只是主存内容的一个子集,且cache与主存的数据交换是以块为单位。地址映射即是应用某种方法把主存地址定位到cache中。地址映射方式有全相联方式、直接方式和组相联方式三种:1.全相联映射方式 主存中一个块的地址与块的内容一起存于cache的行中,其中块地址存于cache行的标记部分中。 这种方法可使主存的一个块直接拷贝到cache中
2013-12-17 09:27:35 572
转载 软件项目估算之PERT估算法
PERT(计划评审技术,Program Evaluation an Review Technique) 是50年代末美国海军部开发北极星潜艇系统时为协调3000多个承包商和研究机构而开发的,其理论基础是假设项目持续时间以及整个项目完成时间是随机的,且服从某种概率分布。PERT可以估计整个项目在某个时间内完成的概率。PERT和CPM在项目的进度规划中应用非常广,本文通过一个项目实例对此技术加以说明。
2013-09-18 09:47:10 8234
转载 Java中常见的问题
1. 谈谈final, finally, finalize的区别。 final—修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为 abstract的,又被声明为final的。将变量或方法声明为final,可以保证它们在使用中不被改变。被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可
2013-08-29 17:41:17 501
转载 HashMap与Hashtable的区别
HashTable的应用非常广泛,HashMap是新框架中用来代替HashTable的类,也就是说建议使用HashMap,不要使用HashTable。可能你觉得HashTable很好用,为什么不用呢?这里简单分析他们的区别。 1.HashTable的方法是同步的,HashMap未经同步,所以在多线程场合要手动同步HashMap这个区别就像Vector和ArrayList一样。2.HashT
2013-08-29 16:36:54 395
转载 abstract class和interface的区别
在Java语言中,abstract class和interface是支持抽象类定义的两种机制。正是由于这两种机制的存在,才赋予了Java强大的面向对象能力。abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,甚至可以相互替换,因此很多开发者在进行抽象类定义时对于abstract class和interface的选择显得比较随意。其实,两者之间还是有很大的
2013-08-29 15:57:19 330
转载 Java构造方法
重载构造方法 、默认构造方法、子类调用父类的构造方法、构造方法的作用域、构造方法的访问级别在多数情况下,初始化一个对象的最终步骤是去调用这个对象的构造方法。构造方法负责对象的初始化工作,为实例变量赋予合适的初始值。构造方法必须满足以下语法规则:(1) 方法名必须与类名相同。(2)不要声明返回类型。(3)不能被static、final、synchronized、abstract和
2013-08-29 14:56:17 391
转载 Java中Abstract的概念及其应用
在Java中用关键字abstract修饰的类成为抽象类,例如:abstract class A{类体内容}注意,abstract类不能用运算符new来创建对象,必须产生其子类,由子类创建对象。 abstract类的类体中可以有abstract方法,abstract方法只允许声明,而不需要实现。例如:abstract void drawpicture();如果一个非abs
2013-08-28 17:12:54 604
转载 Java中super的几种用法并与this的区别
1. 子类的构造函数如果要引用super的话,必须把super放在函数的首位.class Base { Base() { System.out.println("Base"); }}public class Checket extends Base { Checket() { super();// 调用父类的构造方法,一定要放在方法的首个语句 System.out.pr
2013-08-28 16:30:05 484
转载 JAVA多线程编程详解
一、理解多线程 多线程是这样一种机制,它允许在程序中并发执行多个指令流,每个指令流都称为一个线程,彼此间互相独立。线程又称为轻量级进程,它和进程一样拥有独立的执行控制,由操作系统负责调度,区别在于线程没有独立的存储空间,而是和所属进程中的其它线程共享一个存储空间,这使得线程间的通信远较进程简单。 具体到java内存模型,由于Java被设计为跨平台的语言,在内存管理上,显然也要有
2013-08-28 10:02:18 329
转载 java数组声明及初始化
一维数组1) int[] a; //声明,没有初始化2) int[] a=new int[5]; //初始化为默认值,int型为03) int[] a={1,2,3,4,5}; //初始化为给定值 4) int[] a=new int[]{1,2,3,4,5}; //同(3) int[] a=new int[5]{1,2,
2013-08-27 16:59:33 2521
转载 Java数据类型语法解析
Java中数据类型分为两种,一种是基本数据类型,另一种是对象引用类型。所以默认值也分为基本数据类型及对象引用的默认值。另外数组的默认值则是依据是基本数据类型数组还是对象引用类型数组了。 Java中基本数据类型默认值为: short: 0 int: 0 long:0 float: 0.0 double: 0.0 char:(int)char=0 Str
2013-08-27 12:31:07 885
转载 Java内存分配原理精讲
Java内存分配与管理是Java的核心技术之一,之前我们曾介绍过Java的内存管理与内存泄露以及Java垃圾回收方面的知识,今天我们再次深入Java核心,详细介绍一下Java在内存分配方面的知识。一般Java在内存分配时会涉及到以下区域: ◆寄存器:我们在程序中无法控制 ◆栈:存放基本类型的数据和对象的引用,但对象本身不存放在栈中,而是存放在堆中 ◆堆:存
2013-08-27 10:16:25 296
转载 Java的内存机制
1.Java的内存机制 Java 把内存划分成两种:一种是栈内存,另一种是堆内存。在函数中定义的一些基本类型的变量和对象的引用变量都是在函数的栈内存中分配,当在一段代码块定义一个变量时,Java 就在栈中为这个变量分配内存空间,当超过变量的作用域后(比如,在函数A中调用函数B,在函数B中定义变量a,变量a的作用域只是函数B,在函数B运行完以后,变量a会自动被销毁。分配给它的内存会被回收),Ja
2013-08-27 09:41:57 281
转载 Java中abstract和interface的区别
abstract class和interface是Java语言中对于抽象类定义进行支持的两种机制,正是由于这两种机制的存在,才赋予了Java强大的面向对象能力。 abstract class和interface之间在对于抽象类定义的支持方面具有很大的相似性,甚至可以相互替换,因此很多开发者在进行抽象类定义时对于 abstract class和interface的选择显得比较随意。其实,两者之间还是
2013-08-23 15:38:33 286
转载 java中的修饰符static与静态方法final的用法
一、static 修饰属性,方法,代码块1、静态方法: 使这个方法成为整个类所公有的方法,可以用 类名.方法名 直接访问 注意:static修饰的方法,不能直接访问(可以通过组合方式访问)本类中的非静态(static)成员(包括方法和属性) 本类的非静态(static)方法可以访问本类的静态成员(包括方法和属性),可以调用静态方法
2013-08-23 11:47:17 1082
转载 StringBuffer帮你减轻Java的负担
处理文本值是程序员的日常工作,通常用标准的Java String类来完成与文本有关的需求。它对于很多小任务确实很适用,但是如果处理的是大型任务,它会大量消耗系统资源。由于这个原因,JDK引入了StringBuffer类以提供一条处理字符串的有效路径。让我们来看看怎样用这个类来提升性能。 为什么不用标准的String? Java String对象是常量字符串。一旦被初始化和付值,
2013-08-23 09:43:15 336
转载 Effective Java 笔记(二)
NO.4 避免创建重复的对象 如果一个对象是非可变的,那么他中上可以被重用的,如: //不推荐,"test"本来就是一个String实例,如果此方法在一个循环中或者被频繁的调用,将会严重影响性能 String s = new String("test"); //推荐方式 String s = "test"; 对于提供静态方法和构造函
2013-08-23 09:19:56 398
转载 Effective Java 笔记(一)
前言: 清晰性和简介性是最为重要的 一个模块的使用者永远也不应该被模块的行为所迷惑(那样就不清晰了),模块要尽可能的小,但又不能太小【术语模块(module):是指任何可重用的软件组件,从单个方法到包含多个包的复杂系统都可以是一个模块】。代码应该被重用,而不是拷贝,模块之间的相依性应该尽可能降低到最小,错误应该尽早被检测出来,理想的情况下是在编译的时刻。NO.1考虑用静态工
2013-08-23 09:03:46 274
转载 Java言语4种访问权限修饰符简介
Java言语中的访问权限修饰符有4种,但是仅有3个主要字,由于不写访问权限,在Java中被称为默许权限,或同包权限,本文中以(default)替代。下面依照权限从小到大的顺序对4中访问权限区分简介。 1.个体权限(private) private可以修饰数据成员,构造方法,方法成员,无法修饰类(此处指外部类,不思索内部类)。被private修饰的成员,只好在定义它们的类中运用,在其他类
2013-08-22 16:34:02 597
转载 理解final,finally,finalize三者区别
final关键字我们首先来说说final。它可以用于以下四个地方:1. 定义变量,包括静态的和非静态的。2. 定义方法的参数。3. 定义方法。4. 定义类。我们依次来回顾一下每种情况下final的作用。首先来看第一种情况,如果final修饰的是一个基本类型,就表示这个变量被赋予的值是不可变的,即它是个常量;如果final修饰的是一个对象,就表示这个变量被赋予的引用是不可
2013-08-22 09:30:47 390
转载 Java方法继承、方法重载、方法覆盖小总结
1、方法继承:利用extends关键字一个方法继承另一个方法,而且只能直接继承一个类。当Sub类和Base类在同一个包时Sub类继承Base类中的public/protected/默认级别的变量个方法在不同包时继承public/protected级别的变量和方法。2、方法重载:如果有两个方法的方法名相同,但参数不一致,哪么可以说一个方法是另一个方法的重载。方法名
2013-08-21 16:33:51 341
转载 thread中start和run方法的区别
认识Thread的start和run1) start:用 start方法来启动线程,真正实现了多线程运行,这时无需等待run方法体代码执行完毕而直接继续执行下面的代码。通过调用Thread类的 start()方法来启动一个线程,这时此线程处于就绪(可运行)状态,并没有运行,一旦得到cpu时间片,就开始执行run()方法,这里方法 run()称为线程体,它包含了要执行的这个线程的内容,Run
2013-08-21 16:04:35 316
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人