`
renrenqian123
  • 浏览: 10400 次
  • 性别: Icon_minigender_2
  • 来自: 杭州
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论
文章列表
以前一直认为这块知识不重要,至少是目前不重要。不过既然要往深处学习,这块应该是必须的吧。 这次只是把书上看到的一些自己认为重要的地方做个摘录,以后深入学习以后再做补充。 对象的数据位于何处? 1、诸如像C++之类的一些语言认为效率控制是最重要的议题,所以给程序员提供了选择的余地。 为了执行的速度即效率,可以在程序编写的时候就确定对象的存储空间和生命周期。这可以通过将对象置于堆栈或静态存储区域内来实现。(对计算机硬件方面,实在是不感兴趣,所以这句话读了暂时也没什么深刻的体会)这种方式在灵活性上欠佳。 2、第二种方式成为堆(heap)的内存池中动态的创建对象。java运用的便是 ...
有一道java面试题,大概是这样的: public class Test { public static void main(String args[]){   String s;   System.out.println("s="+s); } } 看起来真的很简单,那么答案是什么呢?编译不通过。 如果在笔试现场有IDE能让你使用,恐怕再简单不过了,答案自动就告诉你了。可惜笔试的时候根本没有电脑,而且更多的程序都要靠自己笔写。 那么回过头来看一下为什么编译不通过呢?其实java里的一切都被视为对象,操纵的标识符实际上是对象的一个“引用”(reference)。怎么 ...
一直都认为java的垃圾清理器可以把这个工作给完完整整的给解决,没想到还是有一定的问题的。 java的垃圾回收器虽然负责回收无用对象占用的内存资源,但也有特殊情况:当你的对象并非是用new获得内存区域,垃圾回收器将不知道该如何释放该对象的这块“特殊的内存区域”。为了解决这个情况,java允许在类中定义一个名为finalize()方法,并且在下一次垃圾回收动作发生的时候,才会真正回收对象占用的内存。 finalize()不应该被用作通用的清理方法,之所以要有finalize(),是由于在分配内存时可能采用了类似C语言中的做法,而非java中的通常做法。(这种情况主要发生在使用“本地 ...
一直不是很明白为什么要有访问权限的管理,今天看完《java编程思想》的第五章,算是有了个大致的了解了吧。 现在自己写的一些小程序都是给自己用的,而且都在一台电脑上,很少会有要同步更新这一类的问题。但是往往以后实际生活中真正使用的大型系统是分布式的,而且有不同类别的使用人员。 当创建了一个程序库,也就与该程序库的用户建立了某种关系,这些用户就是客户端程序员,他们是另外一些程序员,他们将你的程序聚合成为一个应用程序,或者运用你的程序来创建更大的程序库。 如果不制定规则,客户端程序员就可以对所有成员随心而为。在这种情况下,所有事物都是公开的。综上,控制对成员的访问权限由两个原因: 1、为了使用 ...
完整的Oracle数据库通常由两部分组成:实例和数据库。 1、数据库是一系列物理文件的集合(数据文件,控制文件,联机日志,参数文件等); 2、实例则是一组Oracle后台进程/线程以及在服务器分配的共享内存区。 Oracle数据库的存储结构分为逻辑存储结构和物理存储结构: 逻辑存储结构:用于描述Oracle内部组织和管理数据的方式; 物理存储结构:用于描述Oracle外部即操作系统中组织和管理数据的方式。 在启动Oracle数据库服务器时,实际上是在服务器的内存中创建一个Oracle实例(即在服务器内存中分配共享内存并创建相关的后台内存),然后由这个实例来访问和控制磁盘中 ...
这两天又开始做项目了,但是没开始多久就发现了这个问题:只要文件被修改过,不论多小的修改,保存的时候都会跳出一个框框,里面写着the user operation is wating。。。。下面紧跟两个红色进度条。看到进度条当然就意味着等待啦!虽然还是比较快的,但是向我这样有顺手习惯,写一点就ctrl+s的人,岂不是要白白耗费一般的时间在等待上? 毫不犹豫的先百度,答案不理想,Google后,问题终于解决。 原因出在这个项目在引入的时候,我偷懒没有放在工作空间下,于是乎,Myeclipse要耗费比平时多好几倍的内存来完成这类寄人篱下的项目工作,然后就很有理由的跳出了上面那样的框框啦~ 解决方 ...
Global site tag (gtag.js) - Google Analytics