一起学JAVA之【基础篇】面向对象的三大基本特征
##### 1、封装
封装就是隐藏对象属性和实现细节,只对外提供接口,把抽象出来的数据和行为封装成一个类。
举个例子:比如说马路上的汽车各式各样,有小轿车、大货车、还有跑车,我们可以把这些各种各样的车抽象成汽车这个类型,然后这个类型里有那些属性呢?有车轮胎、方向盘、座椅;当然这些对用户都是不可见的,但是这个类可以对外开放接口比如启动、转弯这种功能。用户在使用的时候直接调用接口就行了,这就是封装。
class Car{
//轮子
private String wheel;
//方向盘
private String steeringWheel;
//启动
public void start(){
}
//转弯
public void turn(){
}
}
##### 2、继承
继承是类与类之间的关系,还是汽车的例子,上面我们封装了个汽车,但是如果我有个新款式的汽车需要加一个导航仪和导航功能,我们该怎么办呢?有人会说我们可以直接去修改Car这个类,但是有些时候Car是别人的不允许我们修改呢?这个时候我们就可以用到继承
class NewCar extend Car{
//导航仪
private String navigator;
//导航
public void navigator(){
}
}
extend 是 Java 中的一个关键词,用于表示继承关系,继承之后NewCar 会有Car的所有属性和方法,这就是Java的继承,这样有什么好处呢,好处就是提高代码的复用率
3、多态
多态就是一个对象的相同方法在不同情况下有不同的表现形式。多态的三个必要存在条件: 1.继承、2.重写(子类对父类方法进行重新定义)、3.父类引用指向子类对象
class OtherCar extend Car{//继承
/**对父类的方法重新定义**/
//启动
public void start(){
}
//转弯
public void turn(){
}
}
Class Test{
Car car = new OtherCar();//父类引用指向子类
car.start();
}
上面的代码就表现了Java的多态。
总结
1、封装
含义:
封装就是隐藏对象属性和实现细节,只对外提供接口,把抽象出来的数据和行为封装成一个类。
优点:
增强安全性和简化编程
2、继承
含义:
继承是类与类之间的关系,是父与子的关系,当子类继承了父类,子类就有了父类的所有属性和行为
优点:
提高了代码的复用率
3、多态
含义:
多态就是一个对象的相同方法在不同情况下有不同的表现形式。多态的三个必要存在条件: 1.继承、2.重写(子类对父类方法进行重新定义)、3.父类引用指向子类对象
优点:
消除类型之间的耦合关系、可替换性、可扩充性、接口性、灵活性、简化性