【新手如何快速理解java之面向对象】 什么是面向对象,如何理解它?面向对象与面向过程编程思想的区别是什么?什么叫面向对象?面向对象是什么东西?java面向对象这么理解最容易!

【新手如何快速理解java之面向对象】

   对于java面向对象,我的理解是:现实生活中的任何物体都可以归为一类事物,一类事物就是我们说的类,而事物的中的具体的某一个就是对象。

    简单点理解:类是一类的事物,对象是类里面具体的个体。

    先有类,后有对象,对象是根据类来创建的。

面向对象有什么特征?
   面向对象具有三大特征:封装、继承、多态。

(1)什么是封装?
  封装就是将一类事物中的属性和行为抽象成一个类,然后把这个类的属性私有化。

它有以下这些好处:

      • 将变化隔离。
      • 便于使用。
      • 提高代码复用性。
      • 提高安全性。

封装的原则:
• 将不需要对外提供的内容都隐藏起来。
• 把属性都隐藏起来,提供公共方法访问它。

   Java中可以通过对类的成员设置一定的访问权限,实现类中成员的信息隐藏。

访问权限包括:public private private default protected

public:类中限定为public的成员,可以被所有的类访问。

private:类中限定为private的成员,只能被这个类本身访问。如果一个类的构造方法声明为private,则其它类不能生成该类的一个实例。

default:类中不加任何访问权限限定的成员属于缺省的(default)访问状态,可以被这个类本身和同一个包中的类所访问。

protected:类中限定为protected的成员,可以被这个类本身、它的子类(包括同一个包中以及不同包中的子类)和同一个包中的所有其他的类访问。

(2)什么是继承?
     根据已有的一个类的定义为基础,构建新的类。
     已有的类称为父类(也可以叫它基类、超类),新构建的类称为子类(也可以叫它派生类),子类能调用父类的非private修饰的成员,同时它还可以自己添加一些新的成员,甚至重写父类已有的方法。
    Java中父类可以拥有多个子类,但是子类只能继承一个父类,这就叫单继承。

继承有什么好处?
• 实现了代码的复用。
• Java中所有的类都是通过直接或间接地继承java.lang.Object类得到的。
• 子类不能继承父类中访问权限为private的成员变量和方法。
• 子类可以重写父类的方法,即命名与父类同名的成员变量。

  Java中通过super来实现对父类成员的访问,super用来引用当前对象的父类。
(3)什么是多态?
    多态首先是建立在继承的基础上的,先有继承才能有多态。多态是指不同的子类在继承父类后分别都重写覆盖了父类的方法,
    也就是说,父类中的同一个方法,在继承的子类中表现出不同的形式。

————————————————

面向对象与面向过程编程思想的区别是什么?

面向过程:按照整个事态发展的流程一步一步的去做事情。
面向对象:面向对象也包含了面向过程。面向对象更加考虑的是在整个事情发生的过程当中,到底有几个实体参与进来,实体才是动作的支配者。

类的组成:
1 构造器(构造函数/构造方法)[修饰符]类名(形参列表){构造器代码块}
2.属性[访问权限修饰符public] [普通修饰符 static] 数据类型 变量名称[ = 数据];
3.方法(功能/做事)
4.代码块

什么是类? 类是个抽象笼统的概念,用来描述一类事物的,这一类事物具有相同的特征和行为。类是一类的事物,对象是具体的事物(具体的个体)。
什么是对象?
对象可以支配动作和行为,对象是用来做事的那个人,对象就是实体,实体是动作的支配者。个体就是实体。在java中,万物皆可作为对象。
对象如何创建?
对象是根据类来创建的。在Java中,使用关键字new来创建一个新的对象。

   在现实生活中 先有人,后有类。

   计算机里什么也没有,你想用它,得先规定一个类,再通过这个类给它属性和方法来形成一个模板(蓝图),通过这个模板可以创建很多具体的个体(从main去实现个体,个体就是对象),然后就可以通过 这个 个体去调用方法做具体的事情。(也可以说使用对象去调用方法或执行方法)**

那什么叫属性呢?属性就是类所具有的特征/特性。

什么叫方法?方法就是做一件事情,或者说方法就是你想要通过编程去实现的功能。

比如人这个类有什么属性?
人类有名字,有年龄,有性别,这是人这个类所具有的共同的东西,这就是人类所具有的属性。
那么人这个类具有什么样的方法呢?
人类能够做什么事情呢?人类能吃饭,能睡觉。吃饭是人类能做的一件事,睡觉是人类能做的一件事。这就是方法。
下面通过用代码来表示 电脑这个类

类与对象
方法的组成部分
1.[访问权限修饰符] public private protected 默认 (作用域)
2.[普通的修饰符] static final synchornized abstract
3. 返回值类型
3.1: 无返回值类型 void 有选择性 return;
3.2 有返回值的数据类型: 所有的数据类型 必须加 return 数据;
4. 方法名(小写驼峰) userLogin/select 可以重复的
5. 形式参数(规则和规范): 形参 所有的数据类型都可以充当
5.1 无参: ()
5.2: 有参 (int num,string str)
使用方法的时候: 必须传参(实际参数 实参) 一定要与形参规定类型是相似的
6. [方法体 {} ]
参数传递: 值传递
//1.数据(基本数据类型,String,包装类)
//2.内存地址值(引用数据类型)
//参数: 形式参数 就是规则 根据需求制定形参到底是什么类型
在哪里调用的有参的方法 就在那里传参: 实际参数
可变参数: 等同于数组 维护一种类型的数据 数据类型…params

//一个方法里面有且只有一个可变参数 并且是最后一个参数,可以传递>=0个实参
面向对象的本质是使用类维护代码 使用对象封装属性。
通过对象去执行功能,通过对象访问类里面的成员。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值