4.1用构建器自动初始化

若某个类中有一个构建器,那么在创建对象时,Java会自动调用哪个构建器    在Java中构建器的名字必须与类名相同,这样可以保证这样一个方法惠子初始化期间自动调用;

利用构建器的自变量,我们可以为一个对象的初始化设定相应的参数。   tree t=new  Tree(12) //12英尺高的树

若Tree(int)是我们唯一的构建器,那么编译器不会允许我们以任何方式创建一个Tree对象。

Java中  定义和初始化属于同一的概念       构建器属于一种较为特殊的方法类型,因为他没有返回值。这与void有区别

构建器不仅什么也不会自动返回,而且根本不能有任何选择。若存在一个返回值,而且假设我么可以自行选择返回内容,那么编译器多少要知道如何对那个返回值做什么样的处理

4.2方法过载

由于构建器的名字有类名决定,所以只能有一个构建器名称。但是假若我们希望使用多种方式创建一个对象,该如何?

4.2.1区分过载方法

每个过载方法都必须采取独一无二的自变量类型列表,或者自变量的顺序改变

4.2.2主类型的过载

主(数据)类型能从一个较小的类型自动转变成一个较大的类型。4.2.5

我们关心的不是返回值,而是方法调用的其他效果。所以不能根据返回值类型来区分过载的方法

4.2.4默认构建器

默认构建器是没有自变量的  他们的作用是创建一个“”空对象“”,若创建一个没有构建器 的类,则编译程序会帮我们自动创建一个默认的构建器

4.2.5this关键字

this关键字(只能在方法内部使用)可为已经调用了方法的那个对象生成相应的句柄。

1.在构建器里调用构建器

为避免写重复的代码

尽管可以用this调用一个构建器,但是不可调用;两个。  构建器的调用必须是我们做的第一件事情,否则会受到编译程序的报错信息。

2static   一个特定的方法没有this    我们不可以从一个static方法内部发出对非static方法的调用。

4.3清除 :收尾和垃圾收集   finalize()方法     垃圾收集并不等于“”破坏“”。      我们的对象可能不会当做垃圾被收掉

4.5数组初始化

Java编程思想(四)初始化和清除的更多相关文章

  1. 《Java编程思想》——初始化与清理(一)读书笔记

    第一次写这个,这一章都用word写的,结果复制过来没图片....只能上传word文档了.以后改用markdown比较好 word文档地址:<Java编程思想>--初始化与清理(一)读书笔记

  2. Java编程思想(四) —— 复用类

    看了老罗罗升阳的专訪,不由自主地佩服,非常年轻,我之前以为和罗永浩一个级别的年龄.也是见过的不是初高中编程的一位大牛之中的一个,专訪之后.发现老罗也是一步一个脚印的人. 别说什么难做,做不了.你根本就 ...

  3. Java编程思想之五初始化与清理

    随着计算机革命的发展,"不安全"的编程方式已经逐渐称为编程代价高昂的主因之一. 初始化和清理正是涉及安全的两个问题. 5.1 用构造器确保初始化 通过提供构造器,类的设计者可确保每 ...

  4. 《java编程思想》 初始化与清理

    1.初始化与清理的重要性: 1.许多C程序的错误都源于程序员忘记初始化变量,特别是使用程序库时,如果不知道如何初始化库的构件更容易出错 2.当使用完一个元素时,这个元素就不会有什么影响了,所以很容易就 ...

  5. (六)《Java编程思想》——初始化及类的加载顺序

    package chapter7; /** * 初始化及类的加载顺序:顺序如下 * 1.基类的static变量 * 2.导出类的static变量 * 3.基类的变量 * 4.基类的构造函数 * 5.导 ...

  6. Java编程思想学习(一)----对象导论中多态的理解

    1.1抽象过程 1)万物皆对象. 2)程序是对象的集合,他们通过发送消息来告知彼此所要求做的. 3)每个对象都有自己的由其他对象所构成的存储. 4)每个对象都拥有其类型. 5)某一特定类型的所有对象都 ...

  7. 《Java编程思想第四版》附录 B 对比 C++和 Java

    <Java编程思想第四版完整中文高清版.pdf>-笔记 附录 B 对比 C++和 Java “作为一名 C++程序员,我们早已掌握了面向对象程序设计的基本概念,而且 Java 的语法无疑是 ...

  8. Java编程思想第四版勘误

    坊间传说这本书翻译得很烂,我倒觉得还好.虽然看原文更准确,但是如果在具备一定编程思维和基础.能够看出来疑问的情况下,还是看中文更快一些,而且这本书本身也不适合初学者看.当然,错误和不通顺还是有的,而且 ...

  9. 《Java编程思想》读书笔记(四)

    前言:三年之前就买了<Java编程思想>这本书,但是到现在为止都还没有好好看过这本书,这次希望能够坚持通读完整本书并整理好自己的读书笔记,上一篇文章是记录的第十七章到第十八章的内容,这一次 ...

  10. JAVA编程思想(第四版)学习笔记----4.8 switch(知识点已更新)

    switch语句和if-else语句不同,switch语句可以有多个可能的执行路径.在第四版java编程思想介绍switch语句的语法格式时写到: switch (integral-selector) ...

随机推荐

  1. Shell 03 for while case 函数 中断及退出

    一.for循环 1.脚本1,通过循环批量显示5个hello world    ( in 1 2 3 4 5 ) 2.脚本2,通过循环批量显示10个hello world   ( in {1..10} ...

  2. 如何更改电脑ip

    首先打开控制面板==>点击网络和internet==>点击网络和共享中心==>点击更改适配器设置==>右键无线连接或宽带连接(视情况而定)==>属性==>双击ipv ...

  3. 内存管理3- @property 参数详解

    @property ----------------- Create two classes: Book & Student ------------------- book.m #impor ...

  4. Linux之防火墙【CentOS 7】

    CentOS 7默认使用的是firewall作为防火墙,这里改为iptables防火墙. firewall操作: # service firewalld status; #查看防火墙状态 (disab ...

  5. JavaWeb_(Mybatis框架)MyBatis Generator简单入门

    官方文档 传送门 下载地址 传送门 MyBatis Generator(MBG)简介: MyBatis Generator(MBG)是MyBatis MyBatis 和iBATIS的代码生成器.它将为 ...

  6. Linux快速编译

    #include<bits/stdc++.h> using namespace std; string name, tmp, s; int main() { cin >> tm ...

  7. GitHub排名TOP30的机器学习开源项目/贪心学院

    对于机器学习者来说,阅读开源代码并基于代码构建自己的项目,是一个非常有效的学习方法.看看以下这些Github上平均star为3558的开源项目,你错了哪些? 1. FastText:快速文本表示和文本 ...

  8. vue实现购物清单列表添加删除

    vue实现购物清单列表添加删除 一.总结 一句话总结: 基础的v-model操作,以及数组的添加(push)删除(splice)操作 1.checkbox可以绑定数组,也可以直接绑定值? 绑定数组就是 ...

  9. Linux 操作memcache命令行

    telnet 127.0.0.1 11211 连接 memcache stats 查看 memcache 状态 状态说明: pid memcache服务器的进程ID uptime 服务器已经运行的秒数 ...

  10. mod 运算与乘法逆元

    mod 运算与乘法逆元 %运算 边乘边mod 乘法 除法 mod 希望计算5/2%7=6 乘法 除法 mod 希望计算5/2%7=6 两边同时/x 在取mod(p)运算下,a/b=a*bp-2 bp- ...