[Java]重新梳理面向对象的三大特性

1.什么是面向对象?谈谈你对面向对象的理解?

​ ①面向对象是一种编程思想,在面向对象这种编程思想出现以来,主流的是以c语言为首的面向过程的语言,更多的是按照计算机处理事务的思想来编写代码。在现实生活中的任何物体都可以归为一类事物,而每一个个体的就是这一类事物的实例。面向对象的编程是以消息为驱动,以对象为中心。程序 = 对象 + 消息

​ ② 面向对象主要有三种特性。

​ 1.封装

​ 封装就是将一类事物的属性和行为抽象成类,使其属性私有化,行为公开化,提高了数据隐秘行的同时,让代码模块化。使代码复用性更高

​ 2.继承

​ 继承就是进一步将一类事物共有的属性和行为抽象成一个父类,而每一个子类是一个特殊的父类–有父类的行为和属性,也有自己特有的行为和属性。这样做拓展了已存在的代码块,进一步提高了代码的复用性

​ 3.多态

​ 同一个事物,在不同时刻的表现出来的不同状态

​ 比如猫:猫是动物,猫是猫

      动物 d = new 猫();

​ 多态存在的条件:1.要有子父类继承关系或者接口的实现关系 2.子类重写父类方法 3.父类对象的引用指向子类实例对象

class 动物{
    public void show(){
        System.out.println("我是动物");
    }
}

classextends 动物{
    @override
    public void show(){
        System.out.println("我是猫")
    }
}
      动物 d = new 猫();//实现多态

​ 多态有编译时多态和运行时多态,编译时多态体现在方法重载。

​ 运行时多态体现在 父类对象的引用的子类实例对象调用子类重写的方法,此时会调用子类的方法

多态时成员的特点:
①成员变量
编译时看左边,运行时看左边
②成员函数(动态绑定)
编译时看左边,运行时看右边
③静态函数(静态绑定)(个人认为没有多态)
编译时看左边,运行时看左边。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值