第一章 Java特性

本文深入探讨Java的面向对象特性,包括面向过程与面向对象的区别,类与对象的概念和关系,以及封装、继承、多态这三个面向对象的基本特征。通过实例解释了封装的重要性,如洗衣机的接口设计,以及继承和多态的运用,帮助理解Java的面向对象编程思想。
摘要由CSDN通过智能技术生成

面向对象与面向过程

基于面向对象的语言:c++,python,java等
面向过程的语言:c

什么是面向过程?

面向过程:
就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了
举例来说,大象装进冰箱需要几步?
按照面向过程思想:
第一步:工作人员去打开冰箱门
第二步:把大象塞进冰箱
第三步:工作人员把冰箱门关上

面向过程就是把一件事按步骤一步一步来实现
用代码表示

    public void openDoor(){
   }  //开门
    public void putIn(){
   }       //装冰箱
    public void closeDoor(){
   }   //关门

依次调用这些方法就完事了

什么是面向对象

对象,就是对问题中的事物的抽象
面向对象:
就是把现实中的事物都抽象为“对象”。每个对象是唯一的,且都可以拥有它的属性与行为。我们就可以通过调用这些对象的方法、属性去解决问题
用面向对象思想解决大象装进冰箱
大致的了解到了对象这个概念,可以说是对现实事物的一种抽象映射。
例如在这个事件中:
冰箱作为一个对象;
大象作为一个对象。
冰箱有这些功能:开门、装物体、关门

class fridge{
   
    public void open(大象){
   }   //开门
    public void putIn(大象){
   }  //放进冰箱
    public void close(大象){
   }  //关门
}
class elephant{
   
	public void eat(){
   }   //吃
}

每个对象是独立的,有属于它自己的功能,只需要专心实现自己的功能就好。所以在建立对象模型阶段,仅仅关注对象有什么的功能,但不考虑如何实现这些功能。
面向对象的好处,就包括有很好的延展性,比如我给大象赋予了一个吃的功能,它通过调用就可以在冰箱里去吃东西。

面向对象就是把现实问题抽象对象,通过调用每个对象的属性或功能解决问题

类与对象的关系

基本概念

对象
对象是由数据(描述事物的属性)和作用于数据的操作(体现事物的行为)组成的封装体,描述客观事物的一个实体,是构成系统的基本单元。


类是对一组有相同数据和相同操作的对象的定义,是对象的模板,其包含的方法和数据描述一组对象的共同行为和属性。类是在对象之上的抽象,对象则是类的具体化,是类的实例。类可有其子类,也可有其他类,形成类层次结构。

类与对象的区别

1)类是对象的抽象,而对象是类的具体实例。类是抽象的,不占用内存,而对象是具体的,占用存储空间。

2)类是一组具有相同属性和行为的对象的抽象。我们可以将类看做是创建对象蓝图,对象根据这个蓝图去具体实现某个东西。

比如来说,给一张“伞”的蓝图,我们设计出了晴雨伞,剑伞等等,你会发现,这些伞都有相同的行为呀----遮雨。

在这里插入图片描述
类的实例化结果就是对象,而对一类对象的抽象就是类,类描述了一组有相同属性和相同方法的对象。

基本特征:封装、继承、多态

封装

(一)基本概念
封装(encapsulation)即信息隐蔽。它是指在确定系统的某一部分内容时,应考虑到其它部分的信息及联系都在这一部分的内部进行,外部各部分之间的信息联系应尽可能的少。

(二)四种访问控制级别

  • public:对外公开,访问级别最高

  • protected:只对同一个包中的类或者子类公开

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值