面向对象的三大支柱:继承,封装,多态
来源:互联网 发布:巨森网络 编辑:程序博客网 时间:2024/04/30 09:24
/*
面向对象的三大支柱:继承,封装,多态.
*/
下面我就对面向对象的三大支柱简单的谈一谈,自己在学习过程中的一些领悟。
封装:
封装时指隐藏对象的属性和实现细节,仅仅对外提供公共的访问方式。在封装过程中要遵循的原则,把不需要对外提供的内容隐藏起来。把属性隐藏起来仅仅提供公共方法对其进行访问。
注意封装与私有的关系,私有化是封装的一种手段,也是调高数据安全性的一种重要方式。
例如:
class FengZhuang
{
private String name;
private int age;
public void setAge(int age)
{
this.age=age;
}
public int getAge()
{
return age;
}
}
这就是典型的模式封装,把成员变量私有化,不让外界随意操作。保护数据的安全性。仅仅对外提供访问方法即可!
继承:我们常常把它说成父子继承关系,使用extends关键字来标识。
那么为什么我们要继承?继承的好处是什么?这些问题都是继承中需要特别注意的。
首先,父子继承往往是一个抽离和附加功能的过程。类的产生本生就是一个将所有对象进行抽离后的得到的一些共有的属性和方法。即是(静态属性和
动态方法)这个一个说词。父子继承是儿子继承父亲的一些性能,不需要在子类上重复去写相同的功能。这样可以简化书写。而且继承往往可以使类与类之间产生关联。既然有父为什么要有子类呢?子类的功能是对父亲功能的拓展。
class Person
{
void eat()
{
System.out.println("eat............");
}
}
class Student extends Person
{
void study()
{
System.out.prrintln("study。。。。。。。。。“);
}
}
那么我们举这个简单的例子来讲解继承,人有吃的这个动作,学生是人中的一种,但是它应该有自己的独特特点。所以学生不仅可以吃,它还有学习这项能力。
所以当创建学生对象的时候,它就具备了父亲吃的功能,而且还具有了学习的功能。
当然继承除了类与类之间的继承外,还有接口之间的继承。不同的是类与类之间是单继承,多实现的关系。而接口之间是可以多继承的。
多态:多态这个概念还是比较重要的一块。
什么是多态呢?多态是一种事物多种表现形式。
实现多态最重要的两种方法是:重载和覆写。至于什么是重载和覆写,在前面我讲过这个问题。多态存在最重要的是,提高程序的实用性和灵活程度。
class Fu
{
void eat()
{
System.out.println("fu eat.........");
}
int add(int a,int b)
{
return a+b;
}
int add(int a,int b ,int c)
{
return a+b+c;
}
}
class Zi extends Fu
{
void eat()
{
System.out.println("zi eat.......");
}
}
这就是一个典型的多态,父类中有add方法,但是参数个数不同,从而实现灵活性的重载。满足实际需求。
父子类,由于都有eat方法,但是儿子有自己喜欢吃的,所以它要覆盖父类的方法,实现自己独特的eat手段。
多态的应用是在接口,在对象中都是比较普遍的。比如,父类引用指向子类对象,或者接口类型引用指向子类对象等等都属于多态。
以上就是对三大支柱的总结和理解。
- 面向对象的三大支柱:继承,封装,多态
- 面向对象的三大特点(封装,继承,多态)
- java、面向对象的三大特征封装、继承、多态
- 面向对象的三大特征-封装,继承,多态
- java面向对象的三大特征:封装,继承,多态
- 面向对象的三大特征:封装、继承、多态
- OC面向对象的三大特征 封装 ,继承,多态
- 面向对象的三大特征--封装/继承/多态
- 面向对象的三大特征:封装、继承、多态。
- java面向对象的三大特性----封装、继承、多态
- 面向对象的三大特征:继承、封装、多态
- 面向对象的三大特征:封装,继承,多态
- 面向对象的三大属性:封装、继承、多态
- java面向对象的三大特征:封装-继承-多态
- 面向对象的三大特征:继承,封装,多态
- PHP面向对象的三大特征: 继承,封装,多态
- java面向对象的三大特征:封装,继承,多态
- 面向对象的三大特性:封装,继承,多态
- mysql一些常用命令
- 论MySQL何时使用索引,何时不使用索引
- 网络编程:Json解析
- CSS解决图片下面有空隙的简单方法
- linux 技巧:使用 screen 管理你的远程会话
- 面向对象的三大支柱:继承,封装,多态
- (157A)
- PHP 下载功能源码
- 第13周 《C++语言基础》程序阅读——多态性与抽象类 (4)
- 第十三周阅读项目(1):虚函数
- 葛教你如何成为顶尖互联网产品经理
- 指环王经典,励志篇
- InnoDB的三个关键特性
- Codeforces Round #305 (Div. 2)-Mike and Fun(暴力求解连续1)