文档详情

面向对象概念总结.docx

发布:2019-01-12约4.65千字共12页下载文档
文本预览下载声明
面向对象概念总结 面向对象核心:重用 类:类的目的重复声明一组数据。用类创建的一组数据称为对象。-实际上是根据对象设计的类:由对象抽象出的类。 类是模子,确定对象将会拥有的特征(属性)和行为(方法)。类是对象的类型。 对象:属性——对象拥有的各种特征 方法——对象执行的操作 类是抽象的概念,仅是模板;对象是一个具体的实体。 类的重要性:所有Java程序都是以类class为组织单元 2.对象:能够软件中用于表示一个客观存在的物体的一组数据。 计算机的对象用一组数据来表示。 3.属性:是对象的一个数据分量。 -在类中声明,称为类的**成员变量**。 -在程序运行期间,这些变量属于每个对象,又称为**对象的属性**。 4.变量 成员变量和局部变量的区别: a.作用域不同 b.初始值不同 c.同一方法中,局部变量不可重名 不同方法中,局部变量可重名 成员变量不可重名 d.两类变量重名时,局部变量有更高优先级 4.方法: -在类中声明,被全体对象共享(复用)的计算过程或算法。复用了算法,即复用了计算过程。 -好处:可以定义一份算法,被全体对象使用。 5.引用类型变量 Java中除了基本类型的变量,其余的都是引用类型的变量!!! 1)引用类型太多太多 -String str -Integer Long Double//什么时候用的??? -int[] ary -Scanner console 2)“类”类型和数组类型声明的变量都是引用类型 3)引用类型特点: -引用类型的值是被引用对象的堆地址值。 -引用类型通过地址间接引用了对象 -java中的引用类型变量用于操作数据(引用类型变量的作用) -两个引用可以引用同一个对象 -两个变量的地址值一样 -一个引用类型变量,只能存储一个对象的地址 -引用变量可以赋值为null,表示不引用任意对象 -此时如果调用了其属性/元素/方法将出现空指针异常。(空指针异常的两个条件) 为什么使用引用类型变量:相当于对象的标签,用来区分不同的对象。 注意:变量本身不是对象,只是引用了对象,所以叫引用类型变量,一个变量只能引用一个对象,但是一个对象可以被多个变量所引用。 一个变量能够先后引用不同的对象,但是同一时间只能引用一个对象。 注意:同一个包里不能有同名类。 6.内存管理 1)局部变量在栈中分配。//java中方法中的变量都是局部变量??? 2)对象在堆中分配,含对象的属性。 new 的操作都在堆里!!new运算的返回值就是一个地址,是对象的首地址。 栈:运行时的局部变量 堆:运行时new操作分配的内存空间都在堆中 3)方法区:装的是算法,装的是运行时的代码 -方法区中可以创建多个对象,但是方法区中只加载一次类文件 空指针异常(有三个经典案例可以看) 1)是java应用程序最常见异常 2)引用类型为null,并且访问了其属性/元素/方法时 发生空指针异常 -引用为null -访问 属性/元素/方法 3) 解决办法 a.使变量在访问 属性/方法之前,合理赋值 b.在调用方法之前,检查变量是否为null,避免调用null引用的属性/方法 -if(c5!=null){ int n=c5.row; } 8.对象属性的默认初始化 1)对象的属性自动初始化 2)其值为“零”值 -byte short int long:0 -float double :0.0 -boolean:false -char:编号为0的字符,不能随便输出此值 -引用类型:null 3) 构造器(构造方法):封装属性初始化过程,封装以后就可以被反复重用。简化了对象的创建过程。 提示:构造器用于**重用**对象属性的初始化过程。 构造器语法: 在类中定义 其构造器名与类名完全一致//判断是否是一个构造器的规则!!! -大小写要一致 3.不能定义返回值,也不能写void -如果定义了返回值是普通方法 -其目的是初始化属性,不是计算过程,不是方法!!! 9. 默认构造器(默认构造方法) 每个类都有构造方法!!! 2)如果源码中不定义构造器,则编译器自动添加默认构造器(一个无参数的构造器)。 3)如果类中定义了构造器,则java编译器不再添加默认构造器。 构造方法的重载: 为了使用方便,可以对一个类定义多个构造方法。 10. this()(有案例) 构造器中使用this()关键字:功能:调用本类的其他构造器 在一个构造器中调用本类其他构造器,目的是实现构造器之间的逻辑复用,一个构造器重复使用另外一个构造器的属性初始化逻辑,减少了当前构造器的代码。 提示:this()好处
显示全部
相似文档