掘金 后端 ( ) • 2024-05-14 15:36

theme: yu

前言

在上一章学习了Java的程序结构和变量常量,以及数据类型,现在继续学习Java的基础知识。 (加油000A6716.png

对象与类

在学习Java前,你肯定听过Java是一门面向对象的编程语言,那什么是对象呢?这里的对象当然不是找对象的那个对象了。在现实世界中,你可以把一个具体的人看做是一个对象,这个人的年龄,性别,身高,体重等等特征可以看做这个对象的属性,这个人奔跑,吃饭,打游戏等等动作可以看做是这个人的行为。在Java程序中,对象的特征就是属性,对象的行为就是方法,而我们将具有相同特征和方法的对象的集合称之为类。

在Java中,对象是类的实例,例如人类是一个类,而某一个人是一个对象,这个人是人类中的一个实例。类可以看成是创建 Java 对象的模板。

了解完了对象和类的关系,我们应该如何创建我们的类和对象呢?

让我们来定义一个书的类

public class Book{
    String name;
    String author;
    double price
}

这里我们定义了一个公开的类Book,他有书名name,作者author,价格price这些属性,现在我们来创建一个对象。

public class Book{
    String name;
    String author;
    double price
}

Book book = new Book();

在这里,我们通过Book book = new Book()的语句根据Book类创建了一个对象实例book,new是一个关键字,用来创建我们的实例对象,book是这个对象的名字,Book()是我们使用的对象模板,也就是类。

现在我们通过对象来调用类里面的属性与方法吧

public class Book{
    String name;
    String author;
    double price
}

Book book = new Book();

book.name = '活着';

通过对象名.属性我们可以为对象设置属性或者方法,对象的属性与方法要与对应类的属性和方法对应一致。

这样我们就创建了类和对象。

数组

假设我们现在需要5个int类型的变量,我们可以这样写

public static void mian(){ 
  int n1 = 1;
  int n2 = 2;
  int n3 = 3;
  int n4 = 4;
  int n5 = 5;
}

但是很显然,这样的方式在我们需要大量的相同类型的数据时并不方便,这时候我们就可以用到数组。

在编程中,数组都是非常常用到的数据结构之一,它可以帮助我们储存大量的同类型的元素,在Java中,是如何声明一个数组的呢?下面举一个简单的例子来创建Java数组

数组创建

首先必须声明数组变量,才能在程序中使用数组。下面是声明数组变量的语法:

// 数据类型[] 变量名
dataType [] dataArray
//或者
dataType  dataArray[]

然后我们创建数组

// 数组名 = new 数组实例名[数组大小]
arrayRefVar = new dataType[arraySize];

这样就可以创建数组了。让我们来创建一个真实的数组吧

int[] IntArray
score = new IntArray[10]

这样我们创建了一个int类型的数组变量IntArray,并且创建了数组score,大小为10,当然,我们可以将声明和创建数组放在一行,例如

dataType[] arrayRefVar = new dataType[arraySize];

数组的元素是通过索引访问的。数组索引从 0 开始,所以索引值从 0 到 arrayRefVar.length-1。

创建好了数组,我们来处理数组,首先我们来给数组内的元素赋值。

int[] IntArray
score = new IntArray[10]
score[0] = 1;
score[1] = 2;
score[2] = 3;
score[3] = 4;
score[4] = 5;

我们也可以在创建数组时赋值

int[] score = {1,2,3,4,5}

上面的方式称为动态赋值,下面的方式称为静态赋值。

接下来我们来操作数组,首先我们要知道数组的长度用.length来表示,通常我们使用循环结构来对数组进行操作,Java内部的java.util.Arrays类也提供了很多数组的方法。

多维数组

多维数组可以看成是数组的数组,比如二维数组就是一个特殊的一维数组,其每一个元素都是一个一维数组,例如一个二维数组

type[][] typeName = new type[typeLength1][typeLength2];

type可为基础数据类型,也可是复合数据类型,typeLength1 和 typeLength2 必须为正整数,typeLength1 为行数,typeLength2 为列数。

多维数组可以这样引用 type[1][2]

这是就是一些关于数组的基本知识。