封装 多态 继承

封装  
/** 
 * 所谓封装,就是将对象具有的成员变量和成员函数包装和隐藏起来,让外界无法直接使用, 
 * 被封装的成员只能通过某些特定的方式才能访问。   * 实现封装有两个步骤: 
 *   1、将不能暴露的成员隐藏起来,我们就不能让其在类的外部被直接访问或赋值。  *    实现方法是将该成员定义为私有的,在成员定义前加上private访问权限修饰符。  *   2、用公共方法来暴露对该隐藏成员的访问,可以给成员加上public修饰符,将该成员定义为公共的

public class test {
 private String s="hehe";//使用private方法隐藏s的属性

public String getS() {//通过方法可以访问
    return s;
}

public void setS(String s) {
    this.s = s;
}

}

继承

* 继承是一种联结类的层次模型,并且允许和鼓励类的重用,它提供了一种明确表述共性的方法。 
 * 对象的一个新类可以从现有的类中派生。

* 1. 为什么要使用继承?

*  a.提高程序的扩展性。     b.提高了代码的重用性。      
   2. 子类能继承到父类的那些方法和属性 
    第一种:所有的属性和方法都被子类继承到了。

第二种: 
    a、子类和父类在同一个包下: 
    公有的受保护的属性和方法被子类继承到了。     b、子类和父类不在同一个包下:     公有的方法和属性被子类继承到了。      
   3. 子类的对象能调用父类的那些方法和属性?

a、子类和父类在同一个包下: 
    公有的受保护的属性和方法能被子类调用。

b、子类和父类不在同一个包下:     公有的方法和属性能被子类调用。 
    在类和抽象类中,默认的就是受保护的。     在接口中,默认的就是公有的。

public class test extends zilei{
 private String s="hehe";//使用private方法隐藏s的属性

 public static void main(String[] args) {
    zilei s=new zilei();
    s.b=9;
    s.zileifang();
}

}
class zilei{
private    int a;
int b;
    public void zileifang(){}

}

*/

多态的定义:指允许不同类的对象对同一消息做出响应。即同一消息可以根据发送对象的不同而采用多种不同的行为方式。(发送消息就是函数调用)
public class test {
  public static void main(String[] args) {
    father c=new chilren();
    c.play();
    father b=new bigman();
    b.play();
}

}
class father{
    public void play(){
        System.out.println("play");
    }

}
class chilren extends father{
    public void play(){
        System.out.println("play 弹珠");
    }

}
class bigman extends father{

    public void play(){
        System.out.println("play  电脑");
    }

}
时间: 2024-10-08 21:30:30

封装 多态 继承的相关文章

封装,多态,继承. super的方法,类的约束,

1.python的三大特性:python的三大特性,封装,多态,继承封装:函数 模块 类 对象多态 : python中默认支持多态继承: python中的子类继承父类属性和方法 鸭子类型: 看着像鸭子,它就是鸭子python中处处都是鸭子 # 两者之间没有任何关系,但是都遵循着一个隐形的标准两个类中的鸭子类型:# 优点:1,统一标准,减少了词汇量# 2,两者之间没有任何耦合性,但是可以产生关系,其中一个的对象可以调用另一个类的方法# 其他例子 :index pop clear 2. super的

oldboy 21th day. I love Python. 面向对象之封装, 多态, 继承 三大特性

一, 主要内容: 接口类:( 只是在工作中, 书写的一种规范.) 抽象类: 用处: 在工作中, 如果你要是规定几个类, 必须有一样的方法, 你要是抽象类. 封装: 1, 将一些属性或者方法 (一些有用的信息) 放置在一个空间中. 2, 私有成员的封装:私有静态变量, 私有属性, 私有方法 特点: 在变量前+__双下划线, 并且在类外面,子类访问私有变量,私有方法 是访问不到的. 因为私有成员,在运行时, 都会变成: _类名__变量名 所以你在类的外部,或者派生类中都不可访问. 有些方法, 变量,

2、C#面向对象:封装、继承、多态、String、集合、文件(上)

面向对象封装 一.面向对象概念 面向过程:面向的是完成一件事情的过程,强调的是完成这件事情的动作. 面向对象:找个对象帮你完成这件事情. 二.面向对象封装 把方法进行封装,隐藏实现细节,外部直接调用. 打包,便于管理,为了解决大型项目的维护与管理. 三.什么是类? 将相同的属性和相同方法的对象进行封装,抽象出 “类”,用来确定对象具有的属性和方法. 类.对象关系:人是类,张三是人类的对象. 类是抽象的,对象是具体的.对象可以叫做类的实例,类是不站内存的,对象才占内存. 字段是类的状态,方法是类执

Objective-C的封装、继承与多态

面向对象有三大特征:封装.继承和多态. 一.封装 封装是将对象的状态信息隐藏在对象内部,不允许外部程序直接访问对象内部信息,而是通过该类所提供的方法来实现对内部信息的操作和访问.简而言之,信息隐藏,隐藏对象的实现细节,不让用户看到,以此来增强安全性和简化编程,进而达到封装的目的. 使用者不必了解具体的实现细节,而只是要通过外部接口,以特定的访问权限来使用类的成员. 访问修饰符:private.protect.public private:私有的,不可供外部访问的信息,只有类本身能存取. prot

【转】C#三大特性之 封装、继承、多态

C#三大特性之 封装.继承.多态 一.封装: 封装是实现面向对象程序设计的第一步,封装就是将数据或函数等集合在一个个的单元中(我们称之为类).被封装的对象通常被称为抽象数据类型.  封装的意义: 封装的意义在于保护或者防止代码(数据)被我们无意中破坏.在面向对象程序设计中数据被看作是一个中心的元素并且和使用它的函数结合的很密切,从而保护它不被其它的函数意外的修改. 封装提供了一个有效的途径来保护数据不被意外的破坏.相比我们将数据(用域来实现)在程序中定义为公用的(public)我们将它们(fie

面向对象的三大基石(封装,继承和复合,多态)

转自 面向对象的三大基石面向对象的三大基石(封装,继承和复合,多态) 三大基石之一 封装 1.什么是封装? 封装(encapsulation)又叫隐藏实现(Hiding the implementation).就是只公开代码单元的对外接口,而隐藏其具体实现. 比如你的手机,手机的键盘,屏幕,听筒等,就是其对外接口.你只需要知道如何按键就可以使用手机,而不需要了解手机内部的电路是如何工作的.封装机制就像手机一样只将对外接口暴露,而不需要用户去了解其内部实现.细心观察,现实中很多东西都具有这样的特点

Java基础——封装、继承、多态

Java基础--封装.继承.多态 --小实例快速成长 抽象: 1.目的:将复杂的东西简单化,将繁乱的内容有序化. 2.过程:对相同.相似的东西合而为一,对不同的内容进行归门别类. 3.结果:类.接口. 封装: 1.目的:化零为整,将零散的内容进行归属,进行权限控制. 2.过程:将某对象的属性.方法(功能)统一到其名下,并分别设置.适当的权限进行控制管理. 3.结果:对象,接口. 继承: 1.求大同存小异:在一个系列内,大部分都有的内容,就划归父类:子类将父类的内容继承过来,可以有自身的一些发展和

OC学习篇之---类的三大特性(封装,继承,多态)

之前的一片文章介绍了OC中类的初始化方法和点语法的使用:http://blog.csdn.net/jiangwei0910410003/article/details/41683873,今天来继续学习OC中的类的三大特性,我们在学习Java的时候都知道,类有三大特性:继承,封装,多态,这个也是介绍类的时候,必须提到的话题,那么今天就来看一下OC中类的三大特性: 一.封装 学习过Java中类的同学可能都知道了,封装就是对类中的一些字段,方法进行保护,不被外界所访问到,有一种权限的控制功能,Java

学习java随笔第八篇:封装、继承、多态

java和c#一样都是面向对象的语言. 面向对象的语言有三大特征:封装.继承.多态 封装 封装:隐藏对象的属性和实现细节,仅对外公开接口,控制在程序中属性的读和修改的访问级别. class Person2 { private String name; public void setName(String name) { this.name=name; } public String getName() { return name; } private String sex; public voi