类和对象

      JAVA 是面向对象的程序设计语言,类是面向对象的重要内容,可以把类当成一种自定义类型,可以使类来定义变量,这种类型的变量统称为引用变量。也就是说所有的类都是引用变量。

         面向对象有俩个重要的概念:类(class)和对象(Object,也被称为实例),其中类就是某一批对象的抽象,对象才是一个具体存在的实体

         JAVA语言是面向对象的程序实际语言,类和对象时面向对象的核心,对一个类的定义而言,包含三种最常见的成员:构造器,成员变量和方法,成员变量用于定义该类或者该类的实例所包含的状态数据,方法则定义该类或该实例的行为特征或功能实现。

构造器用于构造该类的实例,JAVA 是通过new 关键字来调用构造器,从而返回该类的实例。

        static 是一个特殊的关键字,它可用于修饰方法,成员变量等成员。static 修饰的成员表明它属于这个类的本身,而不是属于该类的单个实例,因为通常把static修饰的成员变量和方法也称为类的变量或类的方法,不使用static修饰的普通方法,成员变量

则属于该类的单个实例,而不是属于该类。因此通常把不使用static修饰的成员变量和方法也称为实例变量实例和方法。(static的真正作用就是区分成员变量,方法,内部类,初始化块  这四种属于类的本身还是属于实例。在类中定义的成员,static相当于一个标志)

         构造器既不能定义返回值类型,也不能使用void 声明构造器没有返回值,(如果为构造器定义了返回类型或void声明构造器没有返回值 它将不再是构造器)

         1.JAVA的语法规定。实际上,类的构造器是有返回值的,当使用new 关键字来调用构造器时,构造器返回该类的实例,可以把这个类的实例当成构造器的返回值。因此构造器返回值类型总是当前类,无须定义返回值类型。但必须注意:不要在构造器里显式使用return 来返回当前类的对象 因为构造器的返回值是隐式的。

         对象的产生和使用

        PersonTest  p = new PersonTest

         创建对象的根本途径是构造器,通过new关键字来调用某个类的构造器即可创建这个类的实例(如果权限允许类里定义方法和成员变量都可以通过类的调用。类或实例访问方法或成员变量,访问语句是类.类的变量名|方法)

         当把一个实例赋值给一个引用变量时,JAVA让引用变量指向这个对象,也就是说引用类型里存放的仅仅是一个引用,它指向实际类型。

         类也是一种引用数据类型,因此程序定义的PersonTest 类型的变量实际上是一个引用,它被存放在栈内存里,指向实际的Person对象,而真正的Person对象则放在堆内存中。(不管是数组还是对象,当程序访问引用变量的成员或方法时,实际上是访问该变量所引用的数组,对象的成员变量和方法)

         对象的this引用

         JAVA提供了一个this关键字,this关键字总是指向调用该方法的对象,根据this的不同,this作为对象的默认引用由俩种情况。

         1.构造器中引用该构造器正在初始化的对象

         2.在方法中引用调用该方法的对象

         对于static修饰的方法而言,则可以使用类来直接调用该方法,如果在static 修饰的方法中使用this关键字,则这个关键字无法指定合适的对象

posted @ 2016-12-01 10:54  笔记好习惯  阅读(170)  评论(0编辑  收藏  举报