📜  Java中的引用类型(1)

📅  最后修改于: 2023-12-03 15:32:00.140000             🧑  作者: Mango

Java中的引用类型

在Java中,数据类型分为基本数据类型和引用数据类型。

基本数据类型

Java中的基本数据类型包括:

| 数据类型 | 存储空间 | 取值范围 | | :-: | :-: | :-: | | byte | 1 字节 | -128 到 127 | | short | 2 字节 | -32768 到 32767 | | int | 4 字节 | -2147483648 到 2147483647 | | long | 8 字节 | -9223372036854775808 到 9223372036854775807 | | float | 4 字节 | 3.40282347 x 10^38 到 1.40239846 x 10^-45 | | double | 8 字节 | 1.7976931348623157 x 10^308 到 4.9406564584124654 x 10^-324 | | char | 2 字节 | '\u0000' 到 '\uffff' | | boolean | 1 字节 | true 或 false |

基本数据类型在内存中以值的方式进行存储,比较简单,直接使用赋值符号就可以将一个值赋值给变量。

int i = 10;
double d = 3.14;
boolean b = true;
引用数据类型

Java中的引用数据类型包括:

  • 接口
  • 数组

引用数据类型在内存中存储的是对对象的引用,而不是对象本身的值,通过这个引用可以操作对象的属性和方法。引用数据类型在使用前需要先创建对象,再使用new关键字创建该对象的实例。

String s = new String("hello");

上面的代码中,String是一种引用数据类型,s是String类型的一个变量,使用new关键字创建了s的实例。

类和接口

类和接口是Java中的两种引用数据类型,它们都是用class关键字定义的。类是一种描述对象的模板,它包括属性和方法。接口是一种规范,它定义了一组方法的签名。类可以实现接口,接口也可以继承其他接口,从而形成多层次的继承结构。

public class Person{
    private String name;
    private int age;

    public Person(String n, int a){
        name = n;
        age = a;
    }

    public String getName(){
        return name;
    }

    public int getAge(){
        return age;
    }
}

public interface Animal{
    void eat();
    void run();
}

public class Dog implements Animal{
    public void eat(){
        System.out.println("吃骨头");
    }

    public void run(){
        System.out.println("跑");
    }
}

上面的代码中,Person是一个类,Animal是一个接口,Dog是一个实现了Animal接口的类。

数组

数组也是一种引用数据类型,它是一组同类型数据的集合。数组的长度是固定的,一旦指定了长度,就不能修改。

int[] arr = new int[5];
String[] sArr = new String[]{"aaa", "bbb", "ccc"};

上面的代码中,arr是一个长度为5的int类型数组,sArr是一个长度为3的String类型数组。