Java面向对象三大特征

面向对象编程

前面介绍了类和对象,今天来看看下一个主题是面向对象程序三大特性:封装、继承、多态。


前言

面向对象程序三大特性:封装、继承、多态。而类和对象阶段,主要研究的就是封装特性。何为封装呢?简单来说就是套壳屏蔽细节。


一、封装是什么?

封装就是将数据和操作数据的方法进行有机结合,隐藏对象的属性和实现细节,仅对外公开接口来和对象进行 交互简单的来讲也就是

对象代表上面旧的封装对应的数据,并且提供数据对应的行为.

1.访问限定符修饰

在类和对象章节中,为了实现封装特性,Java中引入了访问限定符,主要限定:类或者类中成员能否在类外或者其他包中被访问。
在这里插入图片描述
注意:父类中private成员变量虽然在子类中不能直接访问,但是也继承到子类中了
我们希望类要尽量做到 “封装”, 即隐藏内部实现细节, 只暴露出必要的信息给类的调用者.
因此我们在使用的时候应该尽可能的使用比较严格的访问权限. 例如如果一个方法能用 private, 就尽量不要用 public.
另外, 还有一种简单粗暴的做法: 将所有的字段设为 private, 将所有的方法设为 public. 不过这种方式属于是对访问权限的滥用, 还是更希望同学们能写代码的时候认真思考, 该类提供的字段方法到底给 “谁” 使用(是类内部自己用, 还是类的调用者使用, 还是子类使用).

2.final关键字

final关键可以用来修饰变量、成员方法以及类。
1. 修饰变量或字段,表示常量(即不能修改)

finalinta=10;
a=20;  //编译出错

2. 修饰类:表示此类不能被继承

final public class Animal {
   
   
...
}
public class Bird extends Animal {
   
   
...
}
// 编译出错
Error:(3, 27) java: 无法从最终com.bit.Animal进行继

其次

我们平时是用的 String 字符串类, 就是用 final 修饰的, 不能被继承

二、什么是继承?

使用继承的好处
1.可以把多个子类重复的代码抽取到父类中,提高代码的复用性。
2子类可以在父类的基础上,增加其他的方法和功能,使子类更强大。

1.简单叙述

面向对象思想中提出了继承的概念,专门用来进行共性抽取,实现代码复用

2.引入关键字

java中提供了extends关键字,这个关键字可以让一个类和另一个类建立起继承的关系。

代码的格式:public class 子类 extends 父类{ }

3.继承的特点和设计

java只支持单继承,不支持多继承,但支持多层继承。 这句话的意思是一个儿子不能有多个爸爸,但我的爸爸也有爸爸。

4.子类能继承父类的内容

如下表可以表示:

在这里插入图片描述
1.构造方法

class Animal{
   
   
    String name;
    int age;
    String sex;

    public Dog() {
   
   //无参
    }

    public Dog(String name, int age, String sex) {
   
   //三参
        this.name = name;
        this.age = age;
        this.sex = sex;
    }
}<
评论 27
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值