DreamWorks

Never say Never。
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2013年7月28日

摘要: final在java中使用比较多,主要使用在三个方面:1、修饰变量,保证变量不能被改变,类似C++中的const2、修饰方法,保证方法不能被覆盖,类似C++中用static修饰的方法3、修饰类,保证类不能被继承,是终态类static在java中的使用1、修饰变量,一般使用static final联合表示,表示一个不能被修改的全局变量。2、修饰方法,属于独立该类的任何对象,被类的实例共享,用类名直接访问,其与非静态方法的区别:对于静态变量在内存中只有一个拷贝(节省内存),JVM只为静态分配一次内存,在加载类的过程中完成静态变量的内存分配,可用类名直接访问(方便),当然也可以通过对象来访问(但是这 阅读全文

posted @ 2013-07-28 23:55 _Babyface 阅读(293) 评论(0) 推荐(0) 编辑

摘要: 为什么需要线程池目前的大多数网络服务器,包括Web服务器、Email服务器以及数据库服务器等都具有一个共同点,就是单位时间内必须处理数目巨大的连接请求,但处理时间却相对较短。传 统多线程方案中我们采用的服务器模型则是一旦接受到请求之后,即创建一个新的线程,由该线程执行任务。任务执行完毕后,线程退出,这就是是“即时创建,即 时销毁”的策略。尽管与创建进程相比,创建线程的时间已经大大的缩短,但是如果提交给线程的任务是执行时间较短,而且执行次数极其频繁,那么服务器将处于 不停的创建线程,销毁线程的状态。我们将传统方案中的线程执行过程分为三个过程:T1、T2、T3。T1:线程创建时间T2:线程执行时间 阅读全文

posted @ 2013-07-28 23:38 _Babyface 阅读(367) 评论(0) 推荐(0) 编辑

摘要: 对于普通类型的对象来说,它们之间的复制是很简单的,例如:int x=8;int y=x;而类对象与普通对象不同,类对象内部结构一般较为复杂,存在各种成员变量。下面看一个类对象拷贝的简单例子。 1 #include 2 using namespace std; 3 4 class CExample { 5 private: 6 int a; 7 public: 8 CExample(int b) 9 { a=b;}10 void Show ()11 {12 cout 2 using namespace std; 3 4 cl... 阅读全文

posted @ 2013-07-28 00:57 _Babyface 阅读(220) 评论(0) 推荐(0) 编辑

摘要: C++中的继承关系容易导致二义性,但是使用虚基类能够避免二义性,其源码如下 1 class Anamal{ 2 public: 3 virtual void eat() = 0; 4 virtual void sleep(){ 5 cout<<"ZZZZZZZZZZZZZ........"<<endl; 6 } 7 }; 8 class Dog:public virtual Anamal{ 9 public:10 virtual void eat(){11 cout<<"Dog eat food"<<end 阅读全文

posted @ 2013-07-28 00:40 _Babyface 阅读(147) 评论(0) 推荐(0) 编辑