《21天学通Java(第7版)》——VC程序员的学习笔记3

第三章 对象

       1、使用new创建对象,基本格式为:类名 实例名 = new 类名(初始化参数列表)。初始化参数列表中的参数个数和参数类型须和类的构造函数保持一致,否则将无法通过编译。(C语言中,new创建的是一个指向实例对象的指针。

       2、使用运算符new,将创建给定类的实例,为它分配内存,调用给定类定义的一个特殊方法(构造函数)。

       3、只有没有定义任何构造函数的类才有默认构造函数(即不带任何参数的构造函数)。只要您在类中定义了一个构造函数,就不要指望它有不带任何参数的默认构造函数。

       4、Java虚拟机(JVM)定期查找未用的对象,并收回这些对象占用的内存,这被称为动态垃圾收集,是完全自动的。(C中,使用了new创建的对象指针,必须显式调用delete来释放

       5、使用句点表示法调用类变量、实例变量、类方法和实例方法,与C相同。使用类变量时,为避免迷惑,应使用类名来引用类变量。这清楚地指出了引用的是类变量;同时出现奇怪的结果时,调试起来也更容易。

       6、使用关键字static定义类变量,因此类变量也叫静态变量。类变量一旦修改将影响到所有实例对象。(C中,创建了一个类的实例,实例中的所有变量和函数都是与实例相关的,修改变量不会影响其他实例。这点C程序员要格外注意,避免修改了类变量而导致其他实例错误

       7、类方法也被称为静态方法,适用于整个类。类方法通常作为通用的工具方法,不是直接操作某个对象,而是整个类。

       8、引用是一个地址,它指明了对象的变量和方法的存储位置。将对象赋给变量或将其作为参数传递给方法时,您实际上并没有使用对象。您甚至没有使用对象的拷贝,您使用的是对象的引用。

       9、在Java 中,没有C 和C++中那样的显式指针和指针算术。然而,使用引用和Java 数组,可以实现大多数指针功能,同时避免了指针的众多缺点。

       10、要在需要子类对象的地方使用超类对象,必须显式地进行强制类型转换。在转换过程中,不会损失仸何信息,而是得到了子类定义的全部方法和变量。要将对象强制转换为另一种类,需要使用与基本类型相同的操作:

              (classname) object

       其中classname 是目标类的名称,object 是源对象的引用。强制类型转换创建一个classname对象的引用;原来的对象继续存在。

       11、除强制转换为某种类外,还可以将对象强制转换为接口,但仅当该对象的类或其超类之一实现了该接口时才行。将对象强制转换为接口意味着您可以调用该接口的方法,即使该对象的类并没有实现这个接口。

       12、在任何情况下,您都不能将对象强制转换为基本数据类型或将基本类型强制转换为对象。

     13、Boolean、Byte、Character、Double、Float、Integer、Long、Short 和Void这些类通常被称为对象封装器(object wrapper),它们提供了基本类型值的对象表示。

       14、自动封装自动地将基本类型转换为对象,而拆封执行相反的操作。如果编写语句时,在本应使用基本类型变量的地方使用了一个对象或相反,相应的值将被转换,以便语句能够被成功地执行。仅当对象包含值时才能对它进行拆封。如果没有调用构造函数来创建对象,编译将失败。

       15、两个对象之间的比较(==或!=)比较的是两个对象的存储指针,即地址比较。

       16、使用字面量创建一个字符串,再用相同的字符内容创建另一个字符串时,Java将返回原来的String 对象。这样,两个字符串将是同一个对象,并没有创建两个不同的对象。(C不同,在编程中需要特别注意

       17、instanceof 是一种运算符,它使用两个操作数:左边为对象的引用,右边是类名。该表

达式返回一个布尔值:如果该对象是这种类或其子类的实例,为true,否则为false。instanceof 运算符还可用于接口。

       18、String、Integer 等类创建实例时方式同基本数据类型,不需要使用关键字new。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值