面向对象相关概念

1.类和对象

面向对象和面向过程的思想对比 :

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

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

类和对象的关系

  • 类:类是对现实生活中一类具有共同属性和行为的事物的抽象
  • 对象:是能够看得到摸的着的真实存在的实体
  • 简单理解:类是对事物的一种描述,对象则为具体存在的事物

2. 类的定义

类的组成是由属性和行为两部分组成

属性: 在类中通过成员变量来体现(类中方法外的变量)
行为: 在类中通过成员方法来体现(和前面的方法相比去掉static关键字即可)
类的定义步骤:

​ ① 定义类

​ ② 编写类的成员变量

​ ③ 编写类的成员方法

public class Student {
    
    
    // 属性 : 姓名, 年龄
    // 成员变量: 跟之前定义变量的格式一样, 只不过位置发生了改变, 类中方法外
    String name;
    int age;

    // 行为 : 学习
    // 成员方法: 跟之前定义方法的格式一样, 只不过去掉了static关键字.
    public void study(){
    
    
        System.out.println("学习");
    }
}

3 .对象的创建和使用

  • 创建对象的格式:
    • 类名 对象名 = new 类名();
  • 调用成员的格式:
    • 对象名.成员变量
    • 对象名.成员方法();
public class TestStudent {
    
    
    /*
        创建对象的格式:
                类名 对象名 = new 类名();
        调用成员变量的格式:
                对象名.变量名
        调用成员方法的格式:
                对象名.方法名();
     */
    public static void main(String[] args) {
    
    
        // 类名 对象名 = new 类名();
        Student stu = new Student();
        // 对象名.变量名
        // 默认初始化值
        System.out.println(stu.name);  // null
        System.out.println(stu.age);   // 0

        stu.name = "张三";
        stu.age = 23;

        System.out.println(stu.name);  // 张三
        System.out.println(stu.age);   // 23

        // 对象名.方法名();
        stu.study();
        // com.itheima.object1.Student@b4c966a
        // 全类名(包名 + 类名)
        System.out.println(stu);
    }
}

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

类中位置不同:
成员变量(类中方法外),局部变量(方法内部或方法声明上)
内存中位置不同:
成员变量(堆内存),局部变量(栈内存)
生命周期不同:
成员变量(随着对象的存在而存在,随着对象的消失而消失),局部变量(随着方法的调用而存在,醉着方法的调用完毕而消失)
初始化值不同:
成员变量(有默认初始化值),局部变量(没有默认初始化值,必须先定义,赋值才能使用)

猜你喜欢

转载自blog.csdn.net/H12345667/article/details/131812176