2.1. 类与对象

打印 上一主题 下一主题

主题 909|帖子 909|积分 2727

在 Java 中,类和对象是面向对象编程的基本构建块。类是一种模板,用于定义对象的属性和行为。对象是类的实例,具有类定义的属性和行为。
2.1.1. 类的定义

要定义一个类,可以使用以下语法:
  1. class ClassName {
  2.     // 成员变量(属性)
  3.     // 成员方法(行为)
  4. }
复制代码
类的名称应遵循驼峰命名法,首字母大写。类可以包含成员变量(属性)和成员方法(行为)。
示例1:定义一个简单的类
  1. class Dog {
  2.     // 成员变量
  3.     String breed;
  4.     int age;
  5.     String color;
  6.     // 成员方法
  7.     void bark() {
  8.         System.out.println("Woof!");
  9.     }
  10.     void sleep() {
  11.         System.out.println("Zzz...");
  12.     }
  13.     void play() {
  14.         System.out.println("Playing...");
  15.     }
  16. }
复制代码
上述示例中,定义了一个名为 Dog 的类,包含三个成员变量(breed,age 和 color)和三个成员方法(bark(),sleep() 和 play())。
2.1.2. 创建和使用对象

创建一个对象,需要使用 new 关键字和构造方法。构造方法是一种特殊的成员方法,用于初始化对象的属性。构造方法的名称与类名相同,没有返回类型。
  1. ClassName objectName = new ClassName();
复制代码
要访问对象的属性和方法,可以使用点(.)操作符。
  1. objectName.property;
  2. objectName.method();
复制代码
示例2:创建和使用对象
  1. class Main {
  2.     public static void main(String[] args) {
  3.         // 创建 Dog 对象
  4.         Dog myDog = new Dog();
  5.         // 设置属性值
  6.         myDog.breed = "Golden Retriever";
  7.         myDog.age = 3;
  8.         myDog.color = "Yellow";
  9.         // 调用方法
  10.         myDog.bark();
  11.         myDog.sleep();
  12.         myDog.play();
  13.         System.out.println("My dog is a " + myDog.breed + " and its color is " + myDog.color + ".");
  14.     }
  15. }
复制代码
2.1.3. 构造方法和 this 关键字

构造方法用于初始化对象。可以为类定义多个构造方法,它们具有不同的参数列表。这称为构造方法重载。
this 关键字用于引用当前对象。在构造方法中,可以使用 this 关键字区分参数和成员变量。
示例3:构造方法和 this 关键字
  1. class Dog {
  2.     // 成员变量
  3.     String breed;
  4.     int age;
  5.     String color;
  6.     // 构造方法
  7.     Dog(String breed, int age, String color) {
  8.         this.breed = breed;
  9.         this.age = age;
  10.         this.color = color;
  11.     }
  12.     // 成员方法
  13.     void bark() {
  14.         System.out.println("Woof!");
  15.     }
  16.     void sleep() {
  17.         System.out.println("Zzz...");
  18.     }
  19.     void play() {
  20.         System.out.println("Playing...");
  21.     }
  22. }
  23. class Main {
  24.     public static void main(String[] args) {
  25.         // 使用构造方法创建 Dog 对象
  26.         Dog myDog = new Dog("Golden Retriever", 3, "Yellow");
  27.         // 调用方法
  28.         myDog.bark();
  29.         myDog.sleep();
  30.         myDog.play();
  31.         System.out.println("My dog is a " + myDog.breed + " and its color is " + myDog.color + ".");
  32.     }
  33. }
复制代码
2.1.4. 封装

封装是一种将数据和操作数据的方法捆绑在一起的技术。为了实现封装,可以使用访问修饰符限制对类成员的访问。Java 提供了四种访问修饰符:public,protected,private 和默认(无修饰符)。
通常,类的成员变量设置为 private,并通过公共的 getter 和 setter 方法访问和修改它们。
示例4:封装
  1.     // 私有成员变量
  2.     private String breed;
  3.     private int age;
  4.     private String color;
  5.     // 构造方法
  6.     Dog(String breed, int age, String color) {
  7.         this.breed = breed;
  8.         this.age = age;
  9.         this.color = color;
  10.     }
  11.     // 公共 getter 和 setter 方法
  12.     public String getBreed() {
  13.         return breed;
  14.     }
  15.     public void setBreed(String breed) {
  16.         this.breed = breed;
  17.     }
  18.     public int getAge() {
  19.         return age;
  20.     }
  21.     public void setAge(int age) {
  22.         this.age = age;
  23.     }
  24.     public String getColor() {
  25.         return color;
  26.     }
  27.     public void setColor(String color) {
  28.         this.color = color;
  29.     }
  30.     // 成员方法
  31.     void bark() {
  32.         System.out.println("Woof!");
  33.     }
  34.     void sleep() {
  35.         System.out.println("Zzz...");
  36.     }
  37.     void play() {
  38.         System.out.println("Playing...");
  39.     }
  40. }
  41. class Main {
  42.     public static void main(String[] args) {
  43.         // 使用构造方法创建 Dog 对象
  44.         Dog myDog = new Dog("Golden Retriever", 3, "Yellow");
  45.         // 使用 setter 方法设置属性
  46.         myDog.setBreed("Labrador");
  47.         myDog.setAge(4);
  48.         myDog.setColor("Black");
  49.         // 使用 getter 方法获取属性
  50.         System.out.println("My dog is a " + myDog.getBreed() + " and its color is " + myDog.getColor() + ".");
  51.         // 调用方法
  52.         myDog.bark();
  53.         myDog.sleep();
  54.         myDog.play();
  55.     }
  56. }
复制代码
通过这些示例,你应该对类和对象有了基本的了解。当然,类和对象在实际编程中的应用远比这里介绍的更复杂。但是,这些基本概念和操作是你开始学习和掌握面向对象编程的基础。


推荐阅读:
https://mp.weixin.qq.com/s/dV2JzXfgjDdCmWRmE0glDA
https://mp.weixin.qq.com/s/an83QZOWXHqll3SGPYTL5g

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

西河刘卡车医

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表