面向对象思想
1.什么是对象
对象不是JAVA的,对象只是一种概念,一种用于解决问题的程序设计思想。
在面向对象中把某一类事物所共有的属性和行为抽象出来就形成了一个类,而类的一个实际的例子就叫对象。
类和对象的关系:类是具有共同属性名称和行为的一组对象的抽象,而对象则是一个类的真实的例子。
类是现实世界或思维世界中的实体在计算机中的反映,它将数据以及这些数据上的操作封装在一起。
类描述了具有相同特性(数据元素,状态变量)和行为(对数据元素,状态变量的操作)的对象的集合,如果需要一个具有特定功能的工具,就可以自定义一个类,类里面有我需要的数据,还有让这个类提供的功能。
对象是具有类类型的变量。类和对象是面向对象编程技术中最基本的概念。类是对象的抽象,对象是类的具体实例。类是抽象的,不占用内存,对象是实体的,占用存储空间。
类是用来穿件对象的蓝图,类是一个定义包括特定类型的对象中的方法和变量的软件模板。
JAVA是一种面向对象的程序设计语言,对象是由类抽象出来的,所有的问题都是通过对象来处理,对象可以操作类的属性和方法来解决问题,所以了解对象的产生,操作和消亡是十分必要的。对象可以认为是在一类事物中抽象出来的某一个特例,通过这个特例来处理这里事物出现的问题,在JAVA语言中通过new操作符来创建对象。
2.对象和对象的引用
表达式:A a1=new A;它代表A是类,a1是引用,a1不是对象,new A才是对象,a1引用指向new A这个对象。
在这里,“=”不能被看做是一个赋值语句,它不是把一个对象赋值给另一个对象,它的执行过程实质上是将右边对象的地址传给了左边的引用,使得左边的引用指向右边的对象。引用里面存放的并不是对象,而是该对象的地址,使得该引用指向了对象。
例1:A a2;它代表A是类,a2是引用,a2不是对象,a2所指向的对象为null;
例2:a2=a1;它代表a2是引用,a1也是引用,a1所指向的对象的地址传给了a2,使得a1和a2指向了同一个对象。
在初始化时:‘=’语句左边的是引用,右边的是new出来的对象。左边引用的是new出来的对象的地址。
在左右两边都是引用时:‘=’左右的引用都指向了右边引用所指向的对象的地址。