欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

关于Java面向对象三大特征:封装、继承、多态的一些理解

程序员文章站 2024-03-14 21:25:47
...

Java是一门面向对象编程语言,它的三大特征是封装、继承、多态,下面就对三大特征的一些理解。

封装:将该类的属性和方法都定义在类中,通过访问控制符来控制它的访问范围 ,不希望外界访问的直接用private修饰符将其封装在类的内部,一般成员变量都是用private修饰符,在类外通过setter和getter方法进行访问,这样保证变量的安全性。

继承:(1)子类继承父类,在同一个包中,子类可以访问从父类继承下来的所有非私有的属性和方法;在不同包中,子类可以访问从父类继承下来的protected和public类型的属性和方法。(2)Java是单继承机制,一个子类只有一个父类,但一个父类可以有多个子类。

多态:多态就是同一个行为具有多个不同表现形式或形态的能力。多态的三个必要条件:1.继承 2.子类重写父类方法 3.父类引用指向子类对象

下面两种是多态中的上转型变量:

  1. 父类 引用变量=new 子类对象()
  2. 接口 变量=new 实现类对象()

上转型变量的特点:(1)可以访问从父类继承下来的属性和方法,但不能访问子类特有的属性和方法 。(2)如果子类将父类的方法重写 则访问的是重写后的方法。

public class Father {
    public void mothod1(){
        System.out.println("我是父类方法");
    }
}
public class Son extends Father {
    public void mothod2(){
        System.out.println("我是子类方法");
    }

    public static void main(String[] args) {
        Father a = new Son();//上转型变量
        a.mothod1();
        //a.mothod2();//无法访问子类特有方法,会报错
    }
}

既然有上转型变量,那么就应该有下转型变量,向上转型是自动就能完成的,向下转型则需要强制类型转换。下转型变量就可以调用子类中的方法,包括特有的属性和方法。

关于Java面向对象三大特征:封装、继承、多态的一些理解