JAVA面向对象(面相对象语言三大特征)

目录

一、封装

  1.概念

  2.封装的特点

  3.封装的具体表现

二、继承

  1.定义

  2.继承的优点

  3.继承使用语法

  4.实例演示

  5.方法重写

  6.super关键字

三、多态

  ●多态定义

  ●两个时期

  ●向上转型

  ●多态的优点

  ●向下转型


今天我将为大家详细介绍面向对象语言最重要的三大特征,因为只有在了解本篇内容并且在日后练习中真正能理解掌握这三大特征,才能确保在后期成为一个合格的面向对象语言程序员。

一、封装

  1.概念

       封装是指,将类的某些信息隐藏在类内部,不允许外部直接访问。而是通过该类提供的方法来访问和操作这些信息。

  2.封装的特点

(1)实现对需要的信息的隐藏

(2)只能通关特定的方法来访问

(3)便于修改操作,可自行加入控制语句

  3.封装的具体表现

       根据实际要求,类中的属性在不同包、不同类中需要被访问的条件,来给相应属性添加合适的访问权限修饰符。如下是两种常见情况:

(1)成员变量设为私有权限,不能在其他类中访问。

private String name;//没设私有前,外部类可随意对属性进行赋值操作
private int age;

解决方法:

       向外界提供一个公共方法来访问。

public void setName(String name){          //提供公共的get、set方法供其使用
    if (name.length()>2&&name.length()<6) {//设置控制语句,控制外部使用条件
        this.name = name;
    }
}
public String getName(){
    return this.name;
}
public void setAge(int age){
    this.age = age;
}
public int getAge(){
    return this.age;
}

(2)构造方法私有化,外部无法直接调用

       在生活中,类似于任务管理器窗口,我们不想让外界创建多个对象,点击几次只会出现一个窗口。

因此创建静态对象,在类加载时,只会创建一次,对外提供。

static Fz f3 = new Fz();

       于是将构造方法私有化

private Fz(){
}

       构造方法私有化导致外部类无法创建该类的对象,只能通过类名调用该类的方法。因此该方法是静态的。

解决方法:

       向外界提供获取该对象的方法

public static Fz getF3(){
    return f3;
}

二、继承

  1.定义

       将多个类的相同属性和行为进行抽取,定义到单独的一个类(基类)中。其他类可以继承基类,拥有基类的属性。

  2.继承的优点

(1)减少代码冗余,提高复用性。

(2)更利于功能扩展(在子类中扩展自己独有的属性)。

(3)继承的出现使类与类间产生了 is - a 关系,为多态的使用提供前提。

  3.继承使用语法

       通过extends关键字,声明一个类B继承类A,格式如下:

[修饰符] class A{

     ......

}

[修饰符] class B extends A{

     ......

}

其中,B为子类,A为基类/父类。

  4.实例演示

       例如猫和狗,他们的共同属性——为他们get、set名字和年龄。这时我们可以抽取一个动物类,写出get、set方法,减少代码冗余。

猫类:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值