Java 与面向对象

来源:互联网 发布:网络书签哪个好 编辑:程序博客网 时间:2024/05/16 23:51

Java 与面向对象

  对象是 Java 程序的核心,在 Java 程序中“万事万物皆对象”。   对象可以看成是静态属性(成员变量)和动态属性(方法)的封装体。类是用来创建同一类型的“模板”,在一个类中定义了该类对象所具有的成员变量以及方法 
    Java 语言中除基本类型之外的变量类型都称为引用类型     Java 中的对象是通过引用对其操作的。 例如: Dog dog; dog = new Dog(); 对象是 new 出来的,位于堆内存,类的每个成员变量在不同的对象中都有不同的值 (除了静态变量)而方法只有一份,执行的时候才占用内存。 

对象的创建和使用

必须使用 new 关键字创建对象,new 做三件事:      ①会在堆中为相应类型分配空间      ②会调用相应的构造方法来初始化对象      ③将在堆中开辟的空间的地址返回回来 

使用对象(引用).成员变量来引用对象的成员变量。
使用对象(引用).方法(参数列表)来调用对象的方法。
同一类的每个对象有不同的成员变量存储空间。
同一类的每个对象共享该类的方法。

成员变量:

在Java中对象的属性(静态部分)也称为成员变量。成员变量可以使用 Java 语言中任何一种数据类型(包括基本类型和引用类型) 定义成员变量时可以对其初始化,如果不对其初始化,Java 使用默认的值对其初始化。
public class Perosn {    //成员变量    int id;    int age=20;    方法定义    int getAge(){        return age;        }    void setAge(int i){        age = i;        }       }

这里写图片描述

成员方法:

在Java语言中使用成员方法对应于类对象的行为。一个成员方法可以有参数,这个参数可以是对象,也可以是基本数据类型的变量,同时成员方法有返回值和不返回任何值的选择。在成员方法中可以调用其他成员方法和类成员变量。
方法需要返回值,可以在方法体中使用return关键字,使用这个关键字后,方法的执行将被终止。方法无返回值,可以使用void关键字表示。成员方法的返回值可以是计算结果,也可以是其他想要的数值和对象,返回值类型与方法返回的值类型一致。
定义成员方法的语法格式:权限修饰符 返回值类型 方法名{参数类型 参数名}{            ...//方法体            return 返回值;}

权限修饰符
Java权限修饰符主要包括private、public和protected,这些修饰符控制着对象和类的成员变量以及成员方法的访问。

这里写图片描述

局部变量

 如果在一个成员方法内定义一个变量,那么就这个变量被称为局部变量。
局部变量是在方法被执行时创建,在方法执行结束时被销毁。局部变量在使用时必须进行赋值操作或被初始化,否则会出现编译出错。

在项目中创建一个类文件,在该类中定义getName()方法并进行调用 :

//定义一个getName()方法   public String getName(){    //局部变量    int id=0;    //调用类中其他方法    setName("Java");    //设置方法返回值    return id+this.name;}

局部变量的有效范围:

  可以将局部变量的有效范围称为变量的**作用域**,局部变量的有效范围从该变量的声明开始到该变量的结束为止。

这里写图片描述

这里写图片描述

this关键字
在Java语言中规定使用this关键字来代表本类对象的引用,this关键字被隐式地用于对象的成员变量和方法。
在项目中创建一个类文件,该类中定义了setName(),并将方法的参数值赋予类中的成员变量。

    //定义一个setName方法    private void setName(String  name){       //将参数值赋予类中的成员变量                   this.name=name;         }                                  

如上述代码中,this.name指的是类中name的成员变量,而this.name=name语句中的第二个name则指的是形参name。实质上setName()方法实现的功能就是将形参的name的值赋予成员变量name.

其实,this除了可以调用成员变量或成员方法之外,还可以作为方法的返回值。

public Book getBook(){        //返回Book类引用        return this;}       

类的构造方法
构造方法是一个与类同名的方法,对象的创建就是通过构造方法完成的。每当类实例化一个对象时,类都会自动调用构造方法。

构造方法的特点:        构造方法没有返回值。        构造方法的名称要与本类一致。
构造方法语法格式://public 构造方法修饰词  book构造方法的名称public book(){    ...//构造方法体}

在构造方法中可以为成员变量赋值,这样当实例化一个本类的对象时,相应的成员变量也将被初始化。如果类中没有明确定义构造方法,编译器会自动创建一个不带参数的默认构造方法。