面向对象特征(oop)

 

 

一. 封装(encapsulation)
  封装:只是隐藏实现的细节,提高安全性,  降低使用复杂度。
    为什么需要封装?
       A. 将已有数据类型的变量封装可以 得到新的自定义类型(类)
      B. 封装可以隐藏对象的属性信息  -- 安全性
       C. 封装可以隐藏对象的实现细节  -- 安全性,方便性
生活实例:电视机,就给你遥控控制,其它都封装。 电脑,给你键盘和鼠标输入。
    如何实现封装?
 1.类
 2.方法
 3.属性
          隐藏实现细节:对象的功能都封装到方法,中间方法设置访问权限,限制其它类方法。
         强制使用方法来访问属性:
               属性私有              getter,setter访问属性
示例:light
灯有品牌、功率、价格等静态特征,即属性
灯有开、关、变暗、变亮等动态特征,即方法
以Java语言来实现灯的例子:
class  Light{
         String brand;//品牌
         double power;//功率
          double price;//价格
      public void on(){…….}
         public void off(){…….}
      public void brighten(){…….}
         public void dim(){…….}
}

二、继承

1、定义:通过一个已有类派生一个新类的过程。
简单的说,继承就是在一个现有类型的基础上,
通过增加新的方法或者重定义已有方法(下面会讲到,这种方式叫重写)的方式,产生一个新的类型过程
2、继承的特点:具有层次结构、子类继承了父类的属性和方法(除构造方法以外)

  子类可以继承父类的私有成员,但是不可以直接使用父类的私有成员,

必需通过公有的方法才能使用私有的成员。
3、继承的优点:代码可重用性、父类的属性和方法可用于子类、
可轻松的定义子类、设计应用程序变得更简单

4、在JAVA中如何实现继承(通过extends关键字来实现)

5. 祖先类Object

三、多态性:方法的多种形态

简单的说:它是指方法名称相同,实现细节却不同。【同名不同用】
多态优点:使用多态提高代码的可扩展性及可维护性
多态的实现:
a. 方法重载
方法名相同,参数列表不同。
   b. 方法重写
       子类重写父类的方法。方法名,参数都必须相同。
      返回值不同是否可以?
      注意:不能降低父类方法的访问权限。
   c. 上溯造型 
      子类对象赋值给父类引用。
       上溯造型可以使重写的方法呈现多态,但同时会带来一个负面效应,即对象被转型后会损失自已扩展的属性和方法。

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值