栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

【Java快速入门】Java语言的类与对象(八)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【Java快速入门】Java语言的类与对象(八)

本文目录

一、本文目标

二、面向对象

2.1 面向对象思想概念

2.2 类和对象

2.2.1 什么是类?

2.2.2 什么是对象?

2.2.3 类与对象的关系

2.3 类的定义

2.4 对象的使用

2.5 成员变量与局部变量的区别


一、本文目标

本文内容包含面向对象、类与对象的关系,通过本文的学习,希望读者可以理解面向对象的思想,明确类与对象的关系,掌握类的定义与创建并访问类中的成员。

二、面向对象

2.1 面向对象思想概念

PS:这里的对象不是男朋友或者女朋友哈。

对象的含义是指具体的某一个事物,即在现实生活中能够看得见摸得着的事物。在面向对象程序设计中,对象所指的是计算机系统中的某一个成分。在面向对象程序设计中,对象包含两个含义,其中一个是数据,另外一个是动作。对象则是数据和动作的结合体。对象不仅能够进行操作,同时还能够及时记录下操作结果。 [引自百度百科] 

Java语言是一种面向对象的程序设计语言,而面向对象思想是一种程序设计思想,我们在面向对象思想的指引下, 使用Java语言去设计、开发计算机程序。 这里的对象泛指现实中一切事物,每种事物都具备自己的属性和行为。面 向对象思想就是在计算机程序设计过程中,参照现实中事物,将事物的属性特征、行为特征抽象出来,描述成计算 机事件的设计思想。它区别于面向过程思想,强调的是通过调用对象的行为来实现功能,而不是自己一步一步的去操作实现。

特点:

面向对象思想是一种更符合我们思考习惯的思想,它可以将复杂的事情简单化,并将我们从执行者变成了指挥者。 面向对象的语言中,包含了三大基本特征,即封装、继承和多态(后续文章再讲解)。

2.2 类和对象

2.2.1 什么是类?
  • 类:是一组相关属性和行为的集合。可以看成是一类事物的模板,使用事物的属性特征和行为特征来描述该类事物。

现实生活中,描述一类的事物:

  • 属性:就是指该事物的状态信息。
  • 行为:就是指该事物能够做什么。

比如生活中的小狗,属性有名字、身长、体重、颜色等。行为有:走路、叫、吃等。

2.2.2 什么是对象?
  • 对象:是一类事物的具体体现。对象是的类的一个具体实例。那么这个对象就肯定会具备该类事物的属性和行为。

现实生活中,一类事物的一个实例:一只小狗。

比如:二哈

它的属性有:名字叫timmy,身长是60cm,体重是30kg,颜色是黑白。行为有:跳着走,旺旺叫,吃狗粮,拆家等。

2.2.3 类与对象的关系
  • 类是对一类事物的抽象描述,它是抽象的。比如狗和猫,没有说具体什么狗和什么猫。
  • 对象是一类事物的具体实例,它是具体的。比如狗类中有二哈,中华田园犬,泰迪等,猫类中有田园猫、加菲猫、波斯猫等。
  • 类是对象的模板,对象是类的实体。

2.3 类的定义

在 Java 语言中,类的定义格式如下:

public class DefineClass {
    // 成员变量 
    // 成员方法
}
  • 定义类:就是定义类的成员,包括成员变量和成员方法。
  • 成员变量:和以前定义变量几乎是一样的。只不过位置发生了改变。在类中,方法外。
  • 成员方法:和以前定义方法几乎是一样的。只不过把static去掉,static的作用在面向对象后面课程中再详细讲解。

示例代码如下:

public class ClassDemo {
    // 成员变量 姓名
    private String name;
    // 成员变量 年龄
    private int age;

    // 成员方法 学习的方法
    public void study() {
        System.out.println("Good Good Study! Day Day Up!");
    }

    // 成员方法 考试的方法
    public void exam() {
        System.out.println("我是全班第一!");
    }
}

2.4 对象的使用

对象的创建

  • 类名 对象名 = new 类名();

比如上述示例代码对象的创建:

ClassDemo classDemo = new ClassDemo();

对象的使用

  • 对象名.成员变量
  • 对象名.成员方法

对象的使用示例代码如下:

public class ClassDemo {
    // 成员变量 姓名
    private String name;
    // 成员变量 年龄
    private int age;

    // 成员方法 学习的方法
    public void study() {
        System.out.println("Good Good Study! Day Day Up!");
    }

    // 成员方法 考试的方法
    public void exam() {
        System.out.println("我是全班第一!");
    }

    public static void main(String[] args) {
        // 创建对象
        ClassDemo classDemo = new ClassDemo();
        // 调用成员变量并直接打印到控制台
        System.out.println("姓名:" + classDemo.name); // null
        System.out.println("年龄:" + classDemo.age);  // 0
        System.out.println("‐‐‐‐‐‐‐‐‐‐----------------------");

        // 给成员变量赋值
        classDemo.name = "刘亦菲";
        classDemo.age = 18;

        System.out.println("姓名:" + classDemo.name); // 刘亦菲
        System.out.println("年龄:" + classDemo.age);  // 18
        System.out.println("‐‐‐‐‐‐‐‐‐‐----------------------");

        //调用成员方法
        classDemo.study(); // Good Good Study! Day Day Up!
        classDemo.exam();  // 我是全班第一!
    }
}

上面代码第一次输出打印的时候,为什么是 null 和 0 呢?答案是没有给成员变量赋值的时候,成员变量会有默认值,具体默认值如下表格:

成员变量的默认初始值
类别数据类型默认值
基本数据类型整数(byte, short, int, long)0
基本数据类型浮点数(float, double)0.0
基本数据类型字符(char)'u0000'
基本数据类型布尔(boolean)false
引用数据类型数组,类,接口null

2.5 成员变量与局部变量的区别

变量根据定义位置的不同,我们给变量起了不同的名字。如下图所示:

public class VariableDemo {

    // 这里定义的是一个成员变量
    private String name;

    public void study() {
        // 这里定义的是一个局部变量
        String sex = "女";
        System.out.println("性别是:" + sex);
    }
}
  • 在类中的位置不同(掌握)
    • 成员变量:类中,方法外
    • 局部变量:方法中或者方法声明上(形式参数)
  • 作用范围不一样(掌握)
    • 成员变量:类中
    • 局部变量:方法中
  • 初始化值的不同(掌握)
    • 成员变量:有默认值
    • 局部变量:没有默认值。必须先定义,赋值,最后使用
  • 在内存中的位置不同(掌握)
    • 成员变量:堆内存
    • 局部变量:栈内存
  • 生命周期不同(掌握)
    • 成员变量:随着对象的创建而存在,随着对象的消失而消失
    • 局部变量:随着方法的调用而存在,随着方法的调用完毕而消失

完结!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1010288.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号