类:是一组相关属性和行为的集合。可以看成是一类事物的模板,使用事物的属性特征和行为特征来描述该 类事物。
现实中,描述一类事物:
属性:就是该事物的状态信息。 行为:就是该事物能够做什么。

举例:小猫。
属性:名字、体重、年龄、颜色。 行为:走、跑、叫。 什么是对象
对象:是一类事物的具体体现。对象是类的一个实例(对象并不是找个女朋友),必然具备该类事物的属性 和行为。

类的定义

现实世界的一类事物:
属性:事物的状态信息。
行为:事物能够做什么。
Java中用class描述事物也是如此:
成员变量:对应事物的属性
成员方法:对应事物的行为

定义格式

  1. public class className {
  2. //成员变量
  3. //成员方法
  4. }
  • 定义类:就是定义类的成员,包括成员变量和成员方法。
  • 成员变量:和以前定义变量几乎是一样的。只不过位置发生了改变。在类中,方法外。
  • 成员方法:和以前定义方法几乎是一样的。只不过把static去掉。

举例说明

public class Student {
    //成员变量
    String name;
    int age;
    //成员方法
    public void study() {
        System.out.println("good good study");
    }
}

对象的使用

使用格式

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

使用对象访问类中的成员:

对象名.成员变量;
对象名.成员方法();

举例说明

public class Test {
    public static void main(String[] args) {
        Student s = new Student();
        //直接输出成员变量值
        System.out.println(s.name);
        System.out.println(s.age);
        //给成员变量赋值
        s.name = "tom";
        s.age = 18;
        System.out.println(s.name);
        System.out.println(s.age);
        //调用成员方法
        s.study();
    }
}

成员变量的默认值

类型 数据类型 默认值
基本类型 整数(byte short int long) 0
浮点数(float double) 0.0
字符(char) ‘\u0000’
布尔(boolean) false
引用类型 数组 类 接口 null

成员变量和局部变量区别

image.png
在类中的位置不同

  • 成员变量:类中,方法外
  • 局部变量:方法中或者方法声明上(形式参数)

作用范围不一样

  • 成员变量:类中
  • 局部变量:方法中

初始化值的不同

  • 成员变量:有默认值
  • 局部变量:没有默认值。必须先定义,赋值,最后使用

在内存中的位置不同

  • 成员变量:堆内存
  • 局部变量:栈内存

生命周期不同

  • 成员变量:随着对象的创建而存在,随着对象的消失而消失
  • 局部变量:随着方法的调用而存在,随着方法的调用完毕而消失