Java对象和类教程
在本教程中,我将解释java类和对象的基本原理。
Java是一种面向对象的编程语言。这意味着,Java中除了原语类型之外的所有内容都是一个对象。但什么是物体呢?使用类和对象的概念是将状态和行为封装到单个编程单元中。这个概念叫做封装。Java对象与现实世界中的对象相似。例如,我们可以在Java中创建一个car对象,该对象将具有诸如当前速度和颜色等属性,以及诸如:accelerate和park之类的行为。
创建类
Java类是创建对象的蓝图。让我们创建一个表示汽车的类。
public class Car { int currentSpeed; String name; public void accelerate() { } public void park() { } public void printCurrentSpeed() { } }
请看上面的代码。汽车对象状态(当前速度和名称)存储在字段中,对象的行为(加速和停车)通过方法显示。在本例中,方法是accelerate()、park()和printCurrentSpeed()。
让我们在这些方法中实现一些功能。
1每次调用加速法时,我们都会在当前车速的基础上增加10英里每小时。
2调用park方法将当前速度设置为零
三。打印速度显示方法。
为了实现这三个需求,我们将创建一个名为Car的类并将文件存储为汽车.java
public class Car { int currentSpeed; String name; public Car(String name) { this.name = name; } public void accelerate() { //add 10 miles per hour to current speed currentSpeed = currentSpeed + 10; } public void park() { //set current speed to zero currentSpeed = 0; } public void printCurrentSpeed() { //display the current speed of this car System.out.println("The current speed of " + name + " is " + currentSpeed + " mpH"); } }
类名
创建java类时,必须遵循以下规则: 文件名和类名必须相等。在我们的示例中–Car类必须存储在名为
Car.java
. Java也区分大小写:用大写字母C编写的Car与用小写C编写的car不同。
Java类构造函数
构造函数是一种特殊的方法。当我们创建一个对象的新实例时调用这些。在上面的例子中,构造函数是:
public Car(String name) { this.name = name; }
构造函数必须与类本身具有相同的名称。它们可以接受参数,也可以不带参数。本例中的参数是“name”。我们使用此构造函数创建一个新的car对象,如下所示(我将在本教程后面更详细地解释这一点):
Car audi = new Car("Audi");
Java注释
你注意到11号线、16号线和21号线前面的记号笔了吗?这就是我们用Java编写注释的方式。执行程序时,将忽略标记为注释的行。我们可以编写注释来对代码中发生的事情进行另外的解释。编写注释是一个很好的实践,可以帮助其他人理解代码。当我们稍后返回代码时,它也会对我们有所帮助。
创建对象
现在让我们继续我们的汽车例子。我们将创建第二个名为CarTest的类,并将其存储到名为卡特斯特.java
public class CarTest { public static void main(String[] args) { //create new Audi car Car audi = new Car("Audi"); //create new Nissan car Car nissan = new Car("Nissan"); //print current speed of Audi - it is 0 audi.printCurrentSpeed(); //call the accelerate method twice on Audi audi.accelerate(); audi.accelerate(); //call the accelerate method once on Nissan nissan.accelerate(); //print current speed of Audi - it is now 20 mpH audi.printCurrentSpeed(); //print current speed of Nissan - it is 10 mpH nissan.printCurrentSpeed(); //now park the Audi car audi.park(); //print current speed of Audi - it is now 0, because the car is parked audi.printCurrentSpeed(); } }
在上面的代码中,我们首先创建了两个类型为Car的新对象-奥迪和日产。这是Car类的两个独立实例(两个不同的对象),当我们调用Audi对象的方法时,这不会影响Nissan对象。
执行CarTest的结果如下所示:
The current speed of Audi is 0 mpH The current speed of Audi is 20 mpH The current speed of Nissan is 10 mpH The current speed of Audi is 0 mpH