java类的主体包括_Java类基础

类是什么?

类在面向对象的编程范式的基本单位。它们用作模板来创建对象。

Java中的类可以包含五个组件:

字段(域)

方法

构造器(也叫构造函数)

静态初始化器

实例初始化程序

字段和方法也称为类的成员。类和接口也可以是一个类的成员。类可以有零个或多个类成员。

构造函数用于创建类的对象。所以必须至少有一个类的构造函数。

初始化器用于初始化类的字段。在一个类中可以有零个或多个静态或实例类型的初始化器。

声明一个类

在Java中声明类的一般语法如下 -

class {

// Body of the class

}

是对类声明有特殊含义的关键字。类声明可以有零个或多个修饰符(modifiers)。

关键字 class 用于声明一个类。

是用户定义的类名称,它应该是有效的标识符组成。

每个类都有一个主体(body),它在一对大括号({})中指定。类的主体包含其不同的组件,例如字段,方法等。

下面的代码定义了一个名为Dog的类,它具有一个空主体。Dog类不使用任何修饰符。如下代码所示 -

class Dog {

// 主体是空的,什么也没有定义

}

类中的字段

类的字段表示类的属性。

Dog类的每个对象都有两个属性:名称(name)和性别(gender)。Dog类应包括两个字段的声明:一个表示名称,一个表示性别。

这些字段在类的主体中声明。 在类中声明一个字段的一般语法是 -

class className {

= initialvalue;

fieldName;

}

class className {

= initialvalue;

fieldName;

}

字段声明可以使用零个或多个修饰符。字段的数据类型位于其名称之前。 或者还可以使用值来初始化每个字段的值。

以下代码显示如何向Dog类添加字段:

class Dog {

String name;

String gender;

}

在java中,一般是用大写字母开始一个类的名称(比较规范,推荐的用法),并大写后续的单词,例如:Table,FirstTime,OrderDetail等等。而使用 table,firstTime,order_detail 等这样的形式来命名类不是一个规范的作法。

字段和方法的名称应以小写字母开头,后面的单词的第一个字母应该大写,例如:name,firstName,orderList等等。

Dog类声明两个字段:name 和 gender。两个字段都是可存储字符串的String类型。

Dog类的每个实例都有这两个字段的副本。

Java中一个类有两种类型的字段:

类字段

实例字段

有时属性属于类本身,不属于该类的任何特定实例。

所有狗的数量应属于狗类本身。狗的数量不存在于狗类的任何特定实例。

只有一个类属性的副本存在,而不考虑实例数。类字段也称为类变量。实例字段也称为实例变量。

name 和 gender是Dog类的两个实例变量。而类的变量必须使用static关键字作为修饰符声明。

以下代码带中,Dog类的声明有一个类变量 - count。如下所示 -

class Dog {

String name; // An instance variable

String gender; // An instance variable

static long count; // A class variable because of the static modifier

}

类变量称为静态变量。 实例变量被称为非静态变量。

使用示例

在这个示例中,定义一个 Dog 类,并实例化三个 Dog 类的实例,每次实例化类的实例时,自动将类变量count的值加1,用来统计当前有多少 Dog 类被实例化。

class Dog {

String name; // An instance variable

String gender; // An instance variable

static long count; // A class variable because of the static modifier

Dog(String name, String gender){

this.name = name;

this.gender = gender;

// 每实例化一个对象, 类变量 count 的值加 1 。

count = count + 1;

}

}

class Main {

public static void main(String[] args) {

Dog dog1 = new Dog("旺财", "公");

Dog dog2 = new Dog("阿贵", "公");

Dog dog3 = new Dog("悠悠", "母");

// 以下都是访问类变量的方法

System.out.println("dog1.count=>"+dog1.count);

System.out.println("dog2.count=>"+dog2.count);

System.out.println("dog3.count=>"+dog3.count);

System.out.println("Dog::count=>"+Dog.count);

}

}

执行上面代码,得到如下结果 -

dog1.count=>3

dog2.count=>3

dog3.count=>3

Dog::count=>3

¥ 我要打赏

纠错/补充

收藏

上一篇:

加QQ群啦,易百教程官方技术学习群

注意:建议每个人选自己的技术方向加群,同一个QQ最多限加 3 个群。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值