浅谈java类的构成

90 阅读3分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第1天,点击查看活动详情

前言

本着分享学习的目的给大家分享一点java的知识(然后顺便拿点奖品)。今天要分享的是java的类的基本构成。

类的基本结构

在java的学习中我们会遇到各种各个样的情形。比如说老师叫你创建一个学生类,要有名字,学号,以及对应的get,set方法。要是你没有怎么学习过java,你可能会觉得这个东西十分的困难,但是不要慌张,这些是非常好解决的。

为什么需要类

我们都知道java有八种基本类型,int这些的,还有他们对应的包装类就是有这八种基本类型构成。可世界是很大的包含多种多样的情况,我们要一个工具来表示现实中的一切。于是java就出现一个类的概念。像上面说的学生类我们就可以用这个代码这样表示。

public class Student
{
    private int no;//学生的编号
    private String name;//学生的姓名

    public Student(int no, String name) {
        this.no = no;
        this.name = name;
    }
    public int getNo() {
        return no;
    }
    public void setNo(int no) {
        this.no = no;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
}

类的成员变量

从上面的代码我们可以知道,类是有自己的“属性”我们一般叫做成员变量,属性或字段。这只是因为java不是中国人写的,翻译而来的问题罢了。除此之外,你觉得成员变量还可以放什么(除了八大类型之外),当然是还可以放其他类。就比如说上面的学生类,我们可以在People类中定义一个学生类就像这样

public class People
{
    private Student student;
}

但是你以为仅仅只是这样吗?那就太简单了成员变量前面的那个private你是怎么看待的呢,或者假如是静态成员变量又是怎么呢?下回揭晓。

类的成员方法

像成员方法有个公式


访问修饰符 返回数据类型 方法名(形参列表..) {//方法体

语句;

return 返回值;

}

就拿上面的例子来说,get和set方法,get是为了返回姓名和编号,set的作用是修改姓名和标号的值。其中set传入了参数,没有返回值。get有返回值,返回对应成员变量的类型,不用传入参数,也不用return什么。所以好像一切都好简单,但是你有没有想过传入未知个参数怎么写,传入之后的参数会对其造成影响吗?

构造器

上面那个

public Student(int no, String name) {
    this.no = no;
    this.name = name;
}

很像方法,但是名叫构造器的东西,是实例化一个类所必需的,就算你什么都不写,类会默认有一个无参构造器,就是上面像下面这样的

public Student() {
}

总结

在我看来类就是三板斧,成员变量,成员方法和构造器。但是这三板斧中的细节还很长,还需要明日研究后再写。