创建自定义类的对象数组

源代码

public class Student{
     static int number = 0;     // 静态变量的访问可以不用创建类的实例就可就可使用< 类名.属性 >的方法访问
     String name; // 学生姓名

     Student( ){     // 无参构造函数
         System.out.println("创建学生成功。。");
         number++;      // 学生数加1
     }

     public static void main(String [] args){
         //  主方法开始
         System.out.println("学生数:"+Student.number);     // 0

         Student [] s;    // 声明要创建的对象数组
         s = new Student[2];   // 创建对象数组,为对象数组开辟空间
         s[0] = new Student();  // 创建数组对象,为数组对象开辟空间

         s[0].name = "凌小墨";       // 先声明,再创建,之后才能使用
        
         System.out.println("学生数:" + Student.number);
         System.out.println("姓名:"+s[0].name);

     }
}

运行结果

问题

  • 为什么Java里创建对象数组不同于C++呢?

Java语言是强类型语言,意思是每个变量和每个表达式都有一个在编译时就确定的类型,所以所有变量必须显式声明类型,也就是说,所有的变量必须先声明,后使用。

Java语言支持的数据类型分为两类:基本数据类型(也叫原始数据类型,Primitive Type)和引用数据类型(Reference Type)。

基本类型不用多说,主要是引用类型。引用类型包括类、接口和数组类型,还有一种特殊的null类型。所谓引用数据类型就是对一个对象的引用,对象包括实例和数组两种。实际上,引用类型变量就是一个指针,只是Java语言里不再使用指针这个说法。

参考阅读

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏机器学习算法与Python学习

python: sort, sorted, reverse

python语言中的列表排序方法有三个:reverse反转/倒序排序、sort正序排序、sorted可以获取排序后的列表。在更高级列表排序中,后两中方法还可以加...

3528
来自专栏黑泽君的专栏

final关键字、多态、抽象类、接口的小复习

--------------------------------------- 1:final关键字可以干什么?有什么特点?   最终的意思。可以修饰类,方法...

682
来自专栏LanceToBigData

JavaSE(三)之static、final、abstract修饰符

一、static修饰符 1.1、static变量         在类中,使用static修饰的成员变量,就是静态变量,反之为非静态变量。         ...

1915
来自专栏Golang语言社区

Go 语言函数

函数是基本的代码块,用于执行一个任务。 Go 语言最少有个 main() 函数。 你可以通过函数来划分不同功能,逻辑上每个函数执行的是指定的任务。 函数声明告诉...

2998
来自专栏水击三千

浅谈JavaScript的面向对象程序设计(三)

  前面已经对JavaScript的面向对象程序设计作了简单的介绍,包括了对象的属性、对象的工厂模式、构造函数和原型等。通过介绍,这些创建对象的方法依然有不少优...

2345
来自专栏猿人谷

const用法小结

常类型是指使用类型修饰符const说明的类型,常类型的变量或对象的值是不能被更新的。因此,定义或说明常类型时必须进行初始化。 概述 1. const有什么...

1777
来自专栏Java帮帮-微信公众号-技术文章全总结

07.Java变量类型

07.Java变量类型 Java 变量类型 在Java语言中,所有的变量在使用前必须声明。声明变量的基本格式如下: ? 格式说明:type为Java数据类型。i...

3617
来自专栏闻道于事

JavaScript深入浅出补充——(一)数据类型,表达式和运算符

项目基本做完,在进行下一阶段学习之前先看视频学习回顾一下JavaScript 一、数据类型 JavaScript中有五种原始类型和一种对象类型 ? JavaSc...

3295
来自专栏Golang语言社区

【Go 语言社区】Go 语言函数--转

Go 语言函数 函数是基本的代码块,用于执行一个任务。 Go 语言最少有个 main() 函数。 你可以通过函数来划分不同功能,逻辑上每个函数执行的是指定的任务...

3398
来自专栏大闲人柴毛毛

稳扎稳打JS——“对象”

一切皆“对象” JS中一切皆“对象” “对象”是属性的集合,而属性又是对象。既然属性又是对象,那么一个对象的属性也可以拥有属性,如: //定义一个函数getN...

3136

扫码关注云+社区