java编程思想读书笔记(4章)

java编程思想读书笔记(4章)

ID:9511041

大小:68.50 KB

页数:8页

时间:2018-05-02

java编程思想读书笔记(4章)_第1页
java编程思想读书笔记(4章)_第2页
java编程思想读书笔记(4章)_第3页
java编程思想读书笔记(4章)_第4页
java编程思想读书笔记(4章)_第5页
资源描述:

《java编程思想读书笔记(4章)》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、Java编程思想读书笔记(4章)  第4章初始化和清理  一.以构造函数(constructor)确保初始化的进行  如果某个class具备构造函数,Java便会在对象生成之际,使用者有能力加以操作之前,自动调用其构造函数,于是便能名确保初始化动作一定被执行。  二.函数重载(Methodoverloading)  1.区分重载函数  由于只能从函数名和函数的引数列来区分两个函数,而重载函数具有相同的函数名称,所以每个重载函数都必须具备独一无二的引数列。  2.Default构造函数  1)default构造函

2、数是一种不带任何引数的构造函数。如果你所开发的class不具任何构造函数,编译器会自动为你生成一个default构造函数。  2)如果你自行定义了任何一个构造函数(不论有无引数),编译器就不会为你生成default构造函数。  3)如果定义了一个class,如classBush{  Bush(intI){}  }  当想用ne  {  publicstaticvoidmain(String[]args)  {  //Sundaex=nee实例,而在getName()中却要使用name实例,显然的错误的。  cl

3、assMovie{  Stringname=;  Movie(){}  publicMovie(Stringname){this.name=name;}  publicstaticStringgetName(){returnname;}  }  publicclassTest{  publicstaticvoidmain(String[]args){  //下面两名先产生实例后再调用getName()没有问题  //Moviemovie1=neovie1);  //Stringname1=movie1.getN

4、ame();  //下面一名将出错  //Stringname2=Movie.getname();(a)  }  }   三.清理(cleanup):终结(finalization)与垃圾回收(garbagecollection)  1)你的对象可能不会被回收  只有当程序不够内存时,垃圾回收器才会启动去回收不再被使用的对象的内存空间。某个对象所占用的空间可能永远不会被释放掉,因为你的程序可能永远不会逼近内存用完的那一刻,而垃圾回收器完全没有被启动以释放你的对象所占据的内存,那些空间便会在程序终止时才一次归还给

5、操作系统  3)只有在采用原生函数(nativemethods)时,才使用finalize()。  四.成员初始化(memberinitialization)  1)函数中的变量不会被自动初始化,如voidf(){  inti;  i++;  }  将发生编译错误,因为i没有被初始化。  2)class的数据成员会被自动初始化,具体情况如下(见P220例子):  基本型别:boolean:false、char:null(u123下一页[教育资源网]edu..,。0000)、byte:0、short:0、int:

6、0、  long:0、float:0、double:0  对象(reference):null  1.初始化次序  1)所有变量一定会在任何一个函数(甚至是构造函数)被调用之前完成初始化(见P233例子)  2)在产生一个class的对象(包含static成员的class的代码被装载)时,首先自动初始化class中的static成员变量,再执行所有出现于static数据定义处的初始化动作,最后执行staticblock,所有这些初始化操作只在第一次生成该对象时进行。  3)自动初始化class中的其它成员变量。

7、  4)执行所有出现于数据定义处的初始化动作。如:inti=1;的执行顺序是先把I自动初始化为0,再执行数据定义处的初始化动作,初始化为1。  5)执行non-staticblock  6)调用构造函数。  例:classCup{  Cup(intmarker){  System.out.println(Cup(+marker+));  }  voidf(intmarker){  System.out.println(f(+marker+));  }  }  classCups{  staticCupc1=ne

8、.out.println(Cups());  }  }  publicclassExplicitStatic{  publicstaticvoidmain(String[]args){  System.out.println(Insidemain());  Cups.c1.f(99);  }  staticCupsx=neain()  f(99)  2.Array的初始化  1)定义数

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。