封装,继承及多态

封装

 

一、

       在面向对象程式设计方法中,封装(英语:Encapsulation)是指一种将抽象性函式接口的实现细节部份包装、隐藏起来的方法。

       封装可以被认为是一个保护屏障,防止该类的代码和数据被外部类定义的代码随机访问。要访问该类的代码和数据,必须通过严格的接口控制(如get和set方法)。

      封装最主要的功能在于我们能修改自己的实现代码,而不用修改那些调用我们代码的程序片段。

      适当的封装可以让程式码更容易理解与维护,也加强了程式码的安全性。

      封装还可以去暴露我们想暴露出去的数据。如楼下年龄返回的年龄是我们想暴露出去的年龄,即当前年龄减五,

public class Student {

    private  String name;

    private  int age;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age-5;
    }

    public void setAge(int age) {
        this.age = age;
    }
}

 

二、封装的访问修饰符

  • 类的访问修饰符(√表示可以使用,×表示不可以使用)
修饰符\作用域同一包中非同一包中
public
默认修饰符(default)×
  • 类成员的访问修饰符(√表示可以使用,×表示不可以使用)

修饰符\作用域同一类中同一包中子类中其它
private×××
默认修饰符(default)××
protected×
public

 


继承

 

一、什么是继承

       继承就是子类继承父类的特征和行为,使得子类对象(实例)具有父类的实例域和方法,或子类从父类继承方法,使得子类具有父类相同的行为。当然,如果在父类中拥有私有属性(private修饰),则子类是不能被继承的。
 


二、继承的特点

     2.1 关于继承的注意事项:
  
       只支持单继承,即一个子类只允许有一个父类,但是可以实现多级继承,及子类拥有唯一的父类,而父类还可以再继承。
       子类可以拥有父类的属性和方法。
       子类可以拥有自己的属性和方法。
       子类可以重写覆盖父类的方法。
    2.2 继承的特点:
        提高代码复用性。

   

 

三、多态

 

多态的体现形式

  •     继承

  •     父类引用指向子类(注!!!:引用存在在栈空间,对象存在堆空间
  •     重写

    1、父类引用指向子类对象叫多态
    2、父类.方法()执行的是子类的实现
    3、只能调用父类中声明的方法。

public class son extends father {

    public void swim(){
        System.out.println("游泳");
    }

    public static void main(String[] args) {


        //  1、父类引用指向子类对象叫多态
        //  2、父类.方法()执行的是子类的实现
        //  3、只能调用父类中声明的方法。(所以newson.swim()这是错误的,无法调用自己的方法!)
        father newson = new son();
        newson.run();
        newson.swim();

    }

    public void run() {
        System.out.println("跑");
    }


}

 

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值