当前位置: 首页> 文旅> 文化 > 【从C++到Java一周速成】章节10:封装、继承、方法的重写、多态

【从C++到Java一周速成】章节10:封装、继承、方法的重写、多态

时间:2025/7/9 3:32:06来源:https://blog.csdn.net/m0_74928310/article/details/139128347 浏览次数:0次

章节10:封装、继承、方法的重写、多态

  • 【1】封装
    • 1.高内聚,低耦合
    • 2.代码层面的体现
  • 【2】继承
  • 【3】方法的重写
  • 【4】多态

【1】封装

1.高内聚,低耦合

  • 高内聚:类的内部数据操作细节自己完成,不允许外部干涉;
  • 低耦合:仅对外暴露少量的方法用于使用。

隐藏对象内部的复杂性,只对外公开简单的接口。便于外界调用,从而提高系统的可拓展性、可维护性,提高程序的安全性,这就是封装性的设计思想。

2.代码层面的体现

以属性为案例进行封装(方法也可以封装):

  1. 权限修饰符:将属性私有化,被private修饰
  2. 提供public修饰的方法让别人访问使用
  3. 外界通过方法来使用属性是受到程序员的制约的,不能随意访问使用属性

ps:可以利用IDEA快捷键生成:alt+insert–>Getter and Setter

【2】继承

在这里插入图片描述
类是对对象的抽象,而继承是对类的抽象(从一些类抽取出相同的东西,抽象出一个父类)

Java中继承语法格式:子类extends父类

public class Student extends Person{
}

继承的好处;

  1. 提高了代码的复用性
  2. 便于代码的扩展
  3. 是多态使用的前提

【3】方法的重写

子类可以对父类的方法进行重写,与C++相同

方法的重写有严格的格式要求:
子类的方法名、参数列表(个数、类型、顺序)要完全跟父类一致

重写和重载的区别:

  • 重载:在同一个类中,方法名相同,形参列表不同,多个方法构成重载。
  • 重写:在不同类中,子类不想直接使用从父类继承的方法,而要进行重写。

【4】多态

不用根据不同动物写不同的重载方法play,只需要将Cat、Dog的父类Animal作为对象参数;
shout是Animal都有的行为,在Cat、Dog里重写shout方法;

public class Animal {public void shout(){System.out.println("shout");}
}
public class Cat extends Animal {public void shout() {System.out.println("miao");}
}
public class Dog extends Animal{public void shout(){System.out.println("wang");}
}
public class Girl {public void play(Animal a){a.shout();}
}
public class main {public static void main(String[] args) {Girl g=new Girl();Animal a=new Animal();Dog d=new Dog();Cat c=new Cat();g.play(a);g.play(c);g.play(d);}
}
  • 多态的三要素:继承、重写、父类引用指向子类对象
  • 多态的好处:提高代码扩展性
关键字:【从C++到Java一周速成】章节10:封装、继承、方法的重写、多态

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: