什么是Java和OOP中的类和对象?(附实例)

252 阅读4分钟

类和对象 是Java和任何面向对象的编程语言的两大支柱。你可以用多种方式来描述Java中的类,我将从我对大学时代的类的记忆开始。那时候,我记得 "类是创建对象的蓝图",这就是我在面试或考试时的回答。虽然我知道什么是蓝图,但我并没有真正理解一个类能做什么。后来,当我开始编码时,我了解了一些数据类型,如用于保存整数值的int数据类型。字符串数据类型用于保存文本值。 当时,我了解到类是一个用户定义的类型,你可以创建一个用户定义类型的结构,如书,它可以有一个字符串的作者,整数的页数,和双倍的价格。这就是你创建Book对象的蓝图,为这些变量提供数值。

简而言之,类和对象的定义都是正确的。对于初级程序员来说,它是创建对象的蓝图,而对于其他少数人来说,它只是为现实世界的实体建模的一种方式。

问题来了,为什么我们在Java中需要类,好吧,我能想到的一件事是把多种类型结合成一个结构。类和对象以及抽象封装继承多态性 等核心OOPS概念是所有Java程序员首先要学习的东西。

Java中的类和对象的一个例子

现在,让我们看看Java中类和对象的例子,以便更好地理解这一概念。我们将首先创建一个书类,然后使用该类创建几个书类对象。记住,在Java中,类的名字以大写字母开头,公共类的文件名与类的名字相同。

为了在Java中创建一个类,我们使用 "class "关键字,为了创建一个对象,我们使用new关键字,调用类的构造函数来初始化新对象。初始化无非是给每个成员变量赋值。例如,图书类有作者、页数、标题和价格,当你创建一个新的图书对象时,你要为每个成员变量提供值。

这里是我们的书类。

public class Book {

  private String author;
  private int numberOfPages;
  private String title;
  private double price;
  
  public Book(String author, int numberOfPages, String title, double price) {
    super();
    this.author = author;
    this.numberOfPages = numberOfPages;
    this.title = title;
    this.price = price;
  }

  public String getAuthor() {
    return author;
  }

  public void setAuthor(String author) {
    this.author = author;
  }

  public int getNumberOfPages() {
    return numberOfPages;
  }

  public void setNumberOfPages(int numberOfPages) {
    this.numberOfPages = numberOfPages;
  }

  public String getTitle() {
    return title;
  }

  public void setTitle(String title) {
    this.title = title;
  }

  public double getPrice() {
    return price;
  }

  public void setPrice(double price) {
    this.price = price;
  }
  
  
}

这里是我们的Java程序,它使用Book类创建了两个Book对象,在控制台中打印它们的标题和作者。

public class Library {
  
  public static void main(String args[]){
    
    Book headFirstJava = new Book("Kathy Sierra", 300, "Head First Java", 45.5d);
    Book effectiveJava = new Book("Joshua Bloch", 250, "Effective Java", 55.5d);
    
    System.out.println("First book Title: " + headFirstJava.getTitle());
    System.out.println("Second book Title: " + effectiveJava.getTitle());
  }

}

这里是输出结果。

First book Title: Head First Java
Second book Title: Effective Java

你可以看到,我们是如何使用Java中的类来创建一个用户定义的变量来表示一个真实的单词,如Book。同样,你也可以创建任何类型的类,如订单、贸易、项目、个人、雇员等任何你的程序需要的东西。

Java中类和对象的区别?

正如我所说,类和对象的关键区别在于,类是一个蓝图,而对象是实际的价值。对象在Java中也被称为实例。 类是明确的结构,并提供可以保存对象值的位置。

下面是类和对象之间的一些区别,供面试者参考。

What is class and object in Java and OOP? Example

关于Java中的类需要记住的事情

以下是关于Java编程语言中类的一些关键内容,供初学者参考:

  1. 类是用类 的关键字

2)在Java中有两种类,顶级类和嵌套类

  1. 根据Java惯例,类的名称应该以大写字母开头。

  2. 与类似于类的C结构不同,Java类不仅可以包含变量,还可以包含对这些字段进行操作的方法。

  3. 类是模块化代码的最小单位,Java中的功能是以类的形式呈现的。

  4. 按照SRP(Single Responsibility Principle)SOLID设计原则,一个类应该只代表一件事,不应该有一个以上的理由去改变一个类。设计良好的类是Java中松散耦合和模块化代码的关键。

  5. 类不做任何特别的事情,它只是定义了结构,而对象做所有的事情。

以上就是关于什么是Java编程语言中的类的全部内容,还有很多细节,我们将在下一篇文章中讨论。 学习类和对象的最好方法是对现实世界中的一些事物进行建模,如人、学生、雇员等。