Gorilla带您学java之对象与类

对象

说到对象,大家肯定会听说过面向对象,那么也肯定听说过面向过程。
那么什么是面向对象什么是面向过程呢?
面向过程就是将问题过程化,一步一步完成。
而面向对象呢就是将问题对象化。

那么面向对象有什么好处呢:
1.更贴近人的思维
2.将复杂的问题简单化
3.从事物的执行者转变成事物的指挥者

说了一大堆大家可能还云里雾里,那么我举一个生活中的例子,希望大家能有所感悟。

比如我想组装一辆汽车,面向过程思想就是我首先得干什么,其次得干什么,然后得干什么,再然后得干什么,最后得干什么。而面向对象思想是我找一个汽车行家,帮我根据我的要求组装出一辆汽车。

那么对象是什么呢。
对象:就是对抽象事物的具体描述。

什么是类呢?
类:就是对抽象事物的描述。
创建类的格式

class Student {
    // 成员变量
    String name;

    // 成员方法
    // 无参方法
    public void eat() {
        System.out.println("恰饭");
    }
    // 有参方法
    public void playGame(String gameName) {
        System.out.println("打" + gameName + "游戏" );
    }
}

然后到main函数中调用这个类

public static void main(String[] args) {
        // 创建一个学生对象
        Student stu1 = new Student();
        stu1.playGame("lol");
        stu1.playGame("哈哈");
        // 为对象的成员变量赋值
        stu1.name = "hape";
        // 打印stu1的name
        System.out.println(stu1.name);

    }

控制台将会打印

打lol游戏
打哈哈游戏
hape

也就是说我们创建一个类,并写出成员变量和成员方法,然后用new关键字来实例化一个对象,然后对 对象进行操作。这就是面向对象编程。
然后对象和类在jvm中的操作大致如下图
这里写图片描述

我们在说说成员变量和局部变量的区别:
总的来说有五个方面
1.生命周期:
成员变量: 随着对象的创建而创建,对象的销毁而销毁
局部变量: 随着方法的执行而创建,方法的结束而销毁
2.初值
成员变量: 如果没有初值 系统会给默认值
局部变量: 没有初值不能使用
3.作用域
成员变量: 在整个类中有效
局部变量: 在方法中有效
4.创建位置
成员变量: 类中方法外
局部变量: 方法上或方法中
5.在内存中的表现
成员变量: 保存在堆内存中的
局部变量: 运行在栈内存中

小哥哥小姐姐点个赞再走吧:)

猜你喜欢

转载自blog.csdn.net/qq_37113621/article/details/82024538