面向对象编程

一、什么是面向对象编程?

  向对象编程的基本思想就是利用类、方法、继承、封装、多态等概念来进行程序设计,从现实世界中实际存在的事物(对象)出发来构造软件系统,尽可能的运用人类的自然思想进行程序设计。

二、结合实际生活

  以我们人类来举例,我们可以定义一个人类(Person)的类,它有吃饭、睡觉和工作等行为。然后,我们可以创建几个人类的对象,每个对象都有自己的属性和行为,比如姓名、年龄和职业等。这样,我们就能通过对象调用对应的方法来模拟人类日常生活中的活动。

三、代码解释

1、类(class)

  类是面向对象编程的基础,它是一种模板,用来描述一组对象所共有的属性和方法。我们可以把类看作是一张蓝图,描述了数据的结构和操作。比如,我们可以定义一个人类(Person)的类,它有姓名、年龄等属性,还有吃饭、睡觉、工作等行为
  这是用Java定义了一个简单的人类,它有两个属性:姓名和年龄,以及三个方法:吃饭、睡觉、工作。其中,构造方法用来初始化对象的属性,而getter和setter方法则是用来访问和修改对象的属性值。

public class Person {
  private String name;
  private int age;

  public Person(String name, int age) {
    this.name = name;
    this.age = age;
  }

  public void eat() {
    System.out.println(name + "在吃饭");
  }

  public void sleep() {
    System.out.println(name + "在睡觉");
  }

  public void work() {
    System.out.println(name + "在工作");
  }

  // getters and setters
  public String getName() {
    return name;
  }

  public void setName(String name) {
    this.name = name;
  }

  public int getAge() {
    return age;
  }

  public void setAge(int age) {
    this.age = age;
  }
}
2、对象(object)

  类描述了对象的属性和方法,而对象则是类的具体实例。我们可以通过类来创建多个对象,每个对象都有自己的属性和方法。比如,我们可以创建几个人类的对象,并让他们吃饭、睡觉、工作。
  这是用Java实现一个简单的示例,我们创建了两个人类的对象:张三和李四。然后,通过对象调用吃饭和睡觉这两个方法,输出对应的信息。

public class Main {
  public static void main(String[] args) {
    Person john = new Person("张三", 30);
    Person mary = new Person("李四", 25);

    john.eat();
    mary.sleep();
  }
}
3、继承

  继承是一种面向对象的机制,它可以使一个类获得另一个类的属性和方法。继承是一种父子关系,父类是被继承的类,而子类则是继承了父类的属性和方法。比如,我们可以定义一个学生类(Student),它继承了人类(Person)的属性和方法。
  这个Java实例中,这个学生类继承了人类的属性和方法,另外还新增了一个学校属性和一个学习方法。在创建学生类对象时,我们只需要提供学校这个属性即可。

public class Student extends Person {
  private String school;

  public Student(String name, int age, String school) {
    //super()用来访问父类中的属性和方法
    super(name, age);
    this.school = school;
  }

  public void study() {
    System.out.println(getName() + "的学校是" + school);
  }

  // getters and setters
  public String getSchool() {
    return school;
  }

  public void setSchool(String school) {
    this.school = school;
  }
}

输出结果
  这是一个简单的示例,我们创建了一个学生类的对象:张三。然后,通过对象调用学习方法,输出对应的信息。

public class Main {
  public static void main(String[] args) {
    Student john = new Student("张三", 20, "社会大学");
    john.study();
  }
}
4、多态

  多态是面向对象编程中的一个重要特性,它允许不同的对象以相同的方式调用同一方法,但得到的结果通常是不同的。比如,我们可以定义一个动物类(Animal),它有一个发出声音的方法,然后分别定义猫(Cat)和狗(Dog)两个子类,它们分别实现了这个方法。然后,我们可以用动物类的对象调用这个方法,输出对应的声音信息。
  这是一个简单的示例,我们先定义一个动物类,并在两个子类中分别实现发出声音的方法。然后,我们用动物类的对象分别调用这个方法,输出对应的声音信息。

public class Animal {
  public void makeSound() {
    System.out.println("动物发出的声音");
  }
}

public class Cat extends Animal {
  @Override
  public void makeSound() {
    System.out.println("这是猫的叫声");
  }
}

public class Dog extends Animal {
  @Override
  public void makeSound() {
    System.out.println("这是狗的叫声");
  }
}

  这个程序创建了两个动物类的对象:猫和狗。然后,用动物类的对象分别调用发出声音这个方法,输出对应的声音信息。

public class Main {
  public static void main(String[] args) {
    Animal animal1 = new Cat();
    Animal animal2 = new Dog();

    animal1.makeSound();
    animal2.makeSound();
  }
}

四、总结

  面向对象编成是一种编程思想,它以对象为中心,通过封装、继承和多态等机制实现程序的组织和管理。在面向对象编程中,是一个非常重要的概念,它是一种抽象的模板,用于描述一类具有相同特征和行为的对象。而对象则是类的实例,它具有类所描述的属性和方法,并能够与其他对象进行交互
  掌握好这个思想可以帮助我们更好地组织和管理代码,使得代码更易于理解,维护和拓展。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Robus_H

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值