Java之继承、封装

本文介绍了面向对象编程中的两个关键概念——封装和继承。封装通过使用private修饰成员变量和方法,确保了数据的安全性,同时提供了getter和setter方法进行访问。继承则是子类继承父类的特性,允许代码重用并简化修改。以Animal和Dog类为例,展示了如何实现类的继承,提高代码的复用性和维护性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

封装

所谓的封装就是把类的属性和方法使用private修饰,不允许类的调用者直接访问,我们定义如下一个类,可以看到所有的成员变量和成员方法都使用private修饰了,我们现在来使用一下这个类。

class Person {
  private String name;
  private int age;
  private int height;
  private void run(){
    System.out.println("能跑");
  }
}

如果想访问这个类中的属性则需要使用getter和setter方法

class Person {
  private String name;
  private int age;
  private int height;
  private void run(){
      System.out.println("能跑");
  }

  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;
  }

  public int getHeight() {
      return height;
  }

  public void setHeight(int height) {
      this.height = height;
  }
}

继承

继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。

 现在有一个动物类(父类)

public class Animal {
  private String name;
  private int id;
  public Animal(String myName, int myid) {
      name = myName;
      id = myid;
  }
  public void eat(){
      System.out.println(name+"正在吃");
  }
  public void sleep(){
      System.out.println(name+"正在睡");
  }
  public void introduction() {
      System.out.println("大家好!我是"         + id + "号" + name + ".");
  }
}

我想定义一个狗类(子类)因为狗类跟动物类相同的属性跟方法所以我可以直接继承动物类

public class Dog extends Animal{
  public Dog(String myName,int myId){
      super(myName , myId);
  }
}

这样Dog类就可以直接使用Animal类中的非私有的属性和方法,如果后面需要修改Animal类跟Dog类的某一个属性则需要修改Animal类的属性即可,这样可以增加代码的复用性。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值