java面向对象

什么是面向对象

面向对象编程(Object-Oriented Programming,简称OOP)
面向对象编程的本质是:以类的方式组织代码,以对象的组织(封装)数据。
核心思想是抽象,三大特性为:封装,继承,多态。

方法调用

静态方法可以直接调用;非静态方法需要实例化类才能直接调用。(记住需要导入类,import)

构造器

主要两种功能:

1.使用new关键字,必须要有构造器,本质在调用构造器
2.用来初始化值,通过有参构造来实现;无参构造默认是不显示自带的,一旦定义有参构造,
无参构造就必须显示定义。

封装

高内聚,低耦合:类的内部细节操作只能让自己完成(高内聚),仅暴露少量的方法给外部使用(低耦合)
封装就是禁止其他人直接访问类内的数据,而应该通过接口来访问。利用关键字private
使用get set方法来设置和获取类数据。

优点:
1.提高程序的安全性,保护数据
2.隐藏代码的实现细节
3.统一接口
4.系统可维护性增加

继承

关键字:extands;继承就是扩展父类

继承是类和类之间的关系,除此之外的关系还有依赖,组合,聚合;
子类一旦继承父类就继承了所有非私有方法。在java中都默认直接或者间接继承Object类。

super

调用父类的非私有方法,当子类和父类存在同名方法时,使用super调用父类的重名方法。
子类的无参构造默认自带父类的无参构造方法,此时super()必须在子类构造器的第一行,否则会报错。
super和this不能同时调用构造方法。

this:本身调用者的这个对象
super:调用父类对象的引用(只能在继承条件下才能使用)

方法重写

重写都是方法的重写,和属性没有关系。当方法用static修饰时,方法的调用之和左边的数据类型有关。当方法不用static修饰时,方法的调用和右边的数据类型有关。
假设a继承b;

A a=new A();
a.test();
B b=new A();
b.test();
这两句	中的运行结果是不一样的,一个是A类中的test,一个是B类中的test方法。
对象能执行的方法只与左边的有关。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值