美文网首页
面向对象基础

面向对象基础

作者: gzf_701 | 来源:发表于2018-01-14 21:45 被阅读0次

1.类是什么?对象是什么?

一切事物皆为对象,即所有的东西都是对象。准确地说,对象是一个自包含的实体,用一组可识别的特性和行为来标示。

A.1 类就是具有相同的属性和功能的对象的抽象集合

‘class’是表示定义类的关键字,定义类有两点需要注意:第一,类名称首字母记得要大写。多个单词则各个首字母大写;第二,对外公开的方法需要用‘public’修饰符。

怎么应用这个类呢?只需要实例化一下就可以了。怎么实例化呢?

A.2 实例就是一个真实的对象 

比如我们都是人,而你我就是人类的实例。实例化就是创建对象的过程,使用new关键字来创建。spring中通过注解来注入对象。

A.3 构造方法,又叫构造函数,其实就是对类进行初始化,构造方法与类同名,无返回值,也不需要void,在new的时候调用。

Cat cat = new Cat();new后面的Cat()其实就是构造方法。

假如在类当中没有写过构造方法Cat(),怎么可以调用呢?

实际上,所有类都有构造方法,如果你不编码则系统默认生成空的构造方法,若你有定义的构造方法,那么默认的构造方法就会失效。

A.4 方法重载:方法重载提供了创建同名的多个方法的能力,但这些方法需使用不同的参数类型

注意方法重载时,两个方法必须要方法名相同,但参数类型或个数必须要有所不同,方法重载可在不改变原方法的基础上,新增功能

A.5 下面介绍一下类当中属性和字段的区别:

属性时一个方法或一对方法,也就是我们所说的set get方法所以属性时publc公有的;而字段就是类当中定义的private也就是私有的。

这时候出现了属性是公有的字段是私有的,那么就出现了私有方法和公有方法了,这时候封装就出现了

A.6 封装:每个对象都包含它能进行操作所需要的所有信息,这个特性称为封装

封装的好处,第一,良好的封装能减少耦合;第二,类内部的实现可以自由的修改;第三,类具有清晰的对外接口。

当多个类内部出现了非常相似的代码(方法),就出现了继承

A.7 继承:如果字类继承父类,第一、字类拥有父类非private的属性和功能;第二、字类具有自己的功能和属性即字类可以扩展父类没有的属性和功能;第三、字类还可以以自己的方式实现父类的功能(方法的重写)。

非private属性,除了public我们再介绍一个protected修饰符,protected表示继承时字类可以对父类有完全访问权,也就是说,用protected修饰的类成员,只对字类公开,但不对其他类公开。

继承的好处:不用继承的话,如果要修改功能,就必须在所有重复的方法中修改,代码越多,越容易出错,而继承的优点是,继承使得所有字类公共的部分都放在类父类中,使得代码得到了共享,这就避免重复

继承的缺点:那就是父类变,字类不得不变。

A.8 多态:表示不同的对象可以执行相同的动作,但要通过它们自己的实现代码来实现。

多态的实例化:Animal animal = new Cat();

在cat中实现animal中的方法,进行了方法的重写之后,animal实现的方法是cat的方法

A.9 接口:interface 接口是把隐式公共方法和属性相结合起来,以封装特定功能的一个集合,一旦类实现了接口,类就可以支持接口所指定的所有属性和成员。申明接口在语法上和申明抽象类完全相同,但不允许提供接口中任何成员的执行方式。还有实现接口的类就必须要实现接口中所有方法和属性。

A.10 集合:

数组的优点:数组在内存中连续存储,因此可以快速而容易的从头到尾遍历元素,可以快速修改元素等等。缺点:创建时必须指定数组变量的大小,在两个元素之间添加元素也比较困难

ArrayList是使用大小可按需求动态增加的数组实现IList接口。

简单来说就是,数组的容量是一开始就固定好的,而ArrayList的容量可根据需要自动扩充

注意了:ArrayList是类型不安全的,因为它可以add各种类型;而数组是类型安全的。

相关文章

  • java SE目录

    java SE目录 java基础(一)java基础(二)关键字面向对象(一)面向对象(二)面向对象(三)集合(一)...

  • Java基础03面向对象

    Java 基础02Java编程基础 面向对象上 面向对象的概述 面向对象的概述:面向对象是一种符号人类思维习惯的编...

  • python面向对象学习笔记-01

    学习笔记 # 0,OOP-Python面向对象 - Python的面向对象 - 面向对象编程 - 基础 -...

  • java基础回顾(2)

    面向对象:是基于面向过程的一种思想。 面向过程:以函数为基础,关注实现过程。 面向对象:以对象为基础,关注实现结果...

  • 面向对象

    title:面向对象tags: 基础,Java 面向对象 面向对象程序设计简介 面向对象的基本思想是使用类、对象、...

  • "类"的讲稿

    -----------------------面向对象基础----------------------------...

  • Java 工程师成神之路 | 2019正式版

    摘要:什么是面向对象 基础篇 01面向对象 → 什么是面向对象 面向对象、面向过程 面向对象的三大基本特征和五大基...

  • 2、面向对象

    一、面向对象 定义:面向对象是基于面向过程的。 面向对象与面向过程比较:面向过程:面向过程是以函数为基础,完成各种...

  • 基础6-面向对象

    基础6-面向对象 ###06.01_面向对象(面向对象思想概述)(了解) * A:面向过程思想概述 *第一步 ...

  • 面向对象

    面向对象基础 目标 理解面向对象 类和对象 添加和获取对象属性 魔法方法 一. 理解面向对象 面向对象是一种抽象化...

网友评论

      本文标题:面向对象基础

      本文链接:https://www.haomeiwen.com/subject/gzwkoxtx.html