Java之面向对象的三大特性:封装,继承,多态讲解

原创 2016年06月01日 18:07:54


面向对象之封装

面向对象的封装性指的是:

1.        属性私有化

2.        对外提供公开的setter和getter

Public classCustomer{

private int age;//private修饰的数据只能在本类中访问

public voidsetAge(int _age){

//安全控制

if (_age<0||_age>100){

system.out.prntln(“年龄不合法”);

return;

}

age=_age;

}

public intgetAge(){//成员方法,实例方法,非静态方法

               //成员方法必须使用”引用.”的方式访问。

return age;

}

面向对象之继承

引入类继承最基本的作用:代码重用

语法:[修饰符列表]class子类名   extends父类名{

     类体}

注意:1. Java语言中,类与类之间只支持单继承

      2.如果没有显示的继承其他类,则该类默认继承objectobjectsun提供的Java中的根类

3.Java语言中,子类继承父类,会将弗雷的所有数据继承,包括私有的也能继承过来,但是在子类中无法直接访问父类中的私有数据,可以

 间接访问;

4.构造方法无法被子类继承

Public class superClass(){

  public void m1(){

System.out.println(“m1…”);

  Public void m2(){

System.out.println(“m2…”);

}

Public class Subextends superClass{

  Public void m3(){

System.out.println(“m3…”);

 

Public classTest01{

Public static voidmain(string[] args){

Sub s=new Sub();

s.m1();

s.m2();

s.m3();

}

面向对象特性之多态

无论向上还是向下转型,两个类之间必须是继承关系

关于Java语言中的向上转型和向下转型

1.        向上转型(upcasting):子—>父,其又被称为自动类型转换,父类型的应用指向子类型对象

程序分为两个阶段:编译阶段和运行阶段

程序编译阶段只知道al是一个Animal类型,运行时堆中的实际对象是cat类型;

Animal al= new cat();

程序在编译阶段al被编译看作是Animal类型,所以程序在编译阶段a1引用绑定的是Animal类种的eat方法(静态绑定),

程序在运行的时候堆中的对象实际是cat类型,而cat 重写了eat方法,所以在运行阶段对象的绑定的方法是cat 中的eat方法(动态绑定)

al.eat();//猫吃鱼

2.        向下转型(downcasting):父—>子,强制类型转换,存在风险

Animal  a2=new Cat();

强制类型转换,需要加强制类转换符

Cat  c1= (cat) a2;

       c1.move();

3.         尽量不要面向具体编程,面向父类编程,面向抽象编程

多态的作用:1.使用多态可以使代码之前的耦合度降低;

2.项目的拓展能力增强;

版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

Java学习第六课--面向对象的三大特性(封装、继承和多态)

封装:        封装是隐藏掉了实现的细节,将属性私有化,提供公有的方法访问私有的属性。这样做的好处是防止外界对属性进行不合理的更改,同时也提高了软件开发的可维护行和安全性。如一辆汽车一样,用户只...

Java — 面向对象的三大特性(封装、继承、多态)

面向对象的概念特点: 1、将复杂的事情简单化 2、从过程中的执行者变成了指挥者 3、是一种思想 理解面向对象: 面向对象是相对于面向过程而言的 他们都是一种思想 ...

我是如何成为一名python大咖的?

人生苦短,都说必须python,那么我分享下我是如何从小白成为Python资深开发者的吧。2014年我大学刚毕业..

Java基础(7):面向对象三大特性—封装、继承和多态的详解

一、封装(encapsulation) 从表面意思来看就是封闭的包装。而Java中,一个类有属性和方法,但是不可能想修改就修改,毫无安全性可言,而且有的类只适用于某一场景,其内部的方法和属性不对外开放...

java 面向对象三大特性(封装,继承,多态)以及抽象、接口的介绍

java 面向对象三大特性(封装,继承,多态)以及抽象、接口的介绍,this,super,构造方法的使用介绍

java面向对象的四大特性-多态,继承,抽象,封装

1.多态 面向对象的四大特性:封装、继承、多态、抽象。从一定角度来看,封装和继承几乎都是为多态而准备的。是最重要的知识点。多态的定义:指允许不同类的对象对同一消息做出响应。即同一消息可以根据发送对...

黑马程序员_iOS开发之OC之面向对象之三大特性封装、继承和多态

一、封装 1、封装的

黑马程序员——OC语言基础:面向对象三大特性,封装、继承、多态

------Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ------- 一、封装性 1.set方法 #import @interface Student :...

黑马程序员 - OC语言 - 面向对象三大特性,封装、继承、多态

——Java培训、Android培训、iOS培训、.Net培训、期待与您交流! ——-一、封装 1. set方法(提供一个方法,让外界设置成员变量的值,可以在方法里面对参数进行过滤) (1)...

黑马程序员-④面向对象三大特性封装、继承、多态

de
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)