面向对象的一些疑问解答
1、什么是面向对象?
—对象和对象进行交互,共同协作完成一件事。
面向对象需要做到三点:①找对象(抽象出来一个类)②创建对象(通过new关键字)③使用对象。
2、如何定义一个类?
—(1)包含: ①字段(属性、成员变量)②方法(成员方法)
其中,没有给成员变量赋初值时,默认是类型所对应的0值。
(引用类型默认是null,boolean默认是false,char类型(Unicode编码)默认是’\u0000’,代表Unicode编码的一个空格)
(2)命名采用大驼峰,做到见名知意。
(3)类相当于一个自定义类型,能定义变量。通过关键字new实例化对象,其中一个类可以实例化多个对象,实例化出来的对象占用实际的物理空间,存储成员变量。
通过new关键字实例化对象时,就会为其在堆上分配一块内存。里面是包含类的属性,和一些其他信息(没有成员方法)。
成员方法存储在方法区。存储类的方法时其实存储的是类的信息,那么方法的信息存储在哪呢?当一个java文件编译好之后,会生成一个字节码文件,其包含了整个类的信息。方法是没办法存的,但是其里面的局部变量存在栈上,方法的信息存在字节码文件里。整个类的信息,类经过编译之后生成二进制字节码文件,存储在方法区。
(4)用.操作符来访问对象的成员变量和成员方法。