面向对象基础1-类和成员变量


一、面向对象和面向过程对比

何为面向对象呢?我们先比较一下面向过程和面向对象的区别。

面向过程:是一种一过程为中心的编程思想,实现功能的每一步,都是自己实现的。

面向对象:是一种以对象为中心的编程思想,通过指挥对象实现具体的功能。

举一个例子:

你自己在家的时候需要自己做饭,洗衣服...,这是你在面向过程

而你女盆友在家的时候,就可以指挥女盆友去做饭,指挥洗衣机去洗衣服,这是面向对象,而女盆友和洗衣机这类就是我们要介绍的对象。

最后,何为面向对象呢? 1、客观存在的一种事物,都可以看作程序中对象 2、使用面向对象思想可以将简单的问题简单化、 3、把我们从执行者变成了指挥者

二、类和对象

1、什么是类

类是一类具有共同属性和行为的事物的抽象

类的特点: 1、类是对象的数据类型 2、类是具有相同属性和行为的一组对象的集合 什么是对象的属性: 对象具有的每个特征,每个属性都有特定的值 什么是对象的行为: 对象能够执行的操作,行为

2、类的定义

类是java程序中基本的组成单位。

首先,类由属性和行为组成: 属性:在类中通过成员变量来体现 行为:在类中通过成员方法来体现(去掉static关键字)

下面介绍类是如何定义的: 步骤:

1、定义类

2、编写类的成员变量

3、编写类的成员方法

public class 类名{ //成员变量 变量1的数据类型 变量1; 变量2的数据类型 变量2; ... //成员方法 方法1; 方法2; ... }

下面举一个例子:

public class Phone{
    //成员变量
    String name;
    int num;
    
    //成员方法
    void call(){
        System.out.println("打电话");
    }
}

3、对象的创建和使用

1、对象的使用

创建对象: 格式: 类名 对象名 = new 类名(); 例: Phone p = new Phone();

2、对象的使用

1.使用成员变量 格式: 对象名.变量名 例: p.name 2.使用成员方法 格式: 对象名.方法名() 例: p.call();

代码案例:

public class PhoneTest(){
    public static void main(){
        //创建对象
        Phone p = new Phone();
        
        //使用成员变量,使用前先给变量赋值
        p.name = "小米";
        p.num = 2399;
        
        System.out.println(p.name);
        System.out.println(p.num);

        //使用成员方法
        p.call();
    }
}

4、成员变量和局部变量的区别

什么是成员变量:类中方法外的变量

例:

public class Phone{
    //成员变量
    String name;    //这是成员变量
    int num;        //这是成员变量
    
    //成员方法
    void call(){
        System.out.println("打电话");
    }
}

什么是局部变量:方法中的变量

例:

public class Phone{
    //成员变量
    String name;
    int num;
    
    //成员方法
    void call(){
        int day = 1999-1-1;                    //这是局部变量
        System.out.println("打电话");
    }
}
成员变量和局部变量的区别: 1、类中位置不同: 成员变量:类中方法外 局部变量:方法内或者声明上(形参) 2、内存中位置不同: 成员变量:堆内存 局部变量:栈内存 3、生命周期不同: 成员变量:随着对象的存在而存在,随着对象的消失而消失 局部变量:随着方法的调用而存在,随着方法得到调用完毕而消失 4、初始化值不同: 成员变量:有默认的初始化值 局部变量:没有默认的初始化值,必须先定义,赋值,才能使用

5、类和对象的关系

类是对象的抽象,对象是类的实体。


总结

经验分享 程序员 微信小程序 职场和发展