面向对象oop

如果是”is-a”关系,用继承。

如果是has-a关系,用组合。

内部类的作用:

  1. 内部类提供了更好的封装。只能让外部类直接访问,不允许同一个包中的其他类直接访问
  2. 内部类可以直接访问外部类的私有属性,内部类被当成其外部类的成员。 但外部类不能访问内部类的内部属性。

内部类的使用场合:

由于内部类提供了更好的封装特性,并且可以很方便的访问外部类的属性。所以,通常内部类在只为所在外部类提供服务的情况下优先使用。

内部类的分类:

  1. 成员内部类(可以使用private、proteted、public任意进行修饰。 类文件:外部类$内部类.class)

a) 非静态内部类(外部类里使用非静态内部类和平时使用其他类没什么不同)

    1. 非静态内部类必须寄存在一个外部类对象里。因此,如果有一个非静态内部类对象那么一定存在对应的外部类对象。 非静态内部类对象单独属于外部类的某个对象。
    2. 非静态内部类可以使用外部类的成员,但是外部类不能直接访问非静态内部类成员。
    3. 非静态内部类不能有静态方法、静态属性、静态初始化块。
    4. 静态成员不能访问非静态成员:外部类的静态方法、静态代码块不能访问非静态内部类,包括不能使用非静态内部类定义变量、创建实例。
    5. 成员变量访问要点:
      1. 内部类里方法的局部变量:变量名
      2. 内部类属性:this.变量名
      3. 外部类属性:外部类名.this.变量名
      4. 内部类的访问:
        1. 外部类中定义内部类:  new InnerClass()
        2. 外部类以外的地方使用非静态内部类:
           Outer.inner  varname = OuterObject.new Inner()
        3. 静态内部类
          1. 定义方式:

          static  class   ClassName {

          //类体

        1. 匿名内部类

        适合那种只需要使用一次的类。比如:键盘监听操作等等。语法:

        new  父类构造器(实参类表) 实现接口 () {

        //匿名内部类类体!

        }

        局部内部类

        定义在方法内部。作用域只限于本方法。用的非常少。

时间: 2024-08-16 19:30:33

面向对象oop的相关文章

PHP面向对象(OOP)编程完全教程

转自:http://blog.snsgou.com/post-41.html 面向对象编程(OOP)是我们编程的一项基本技能,PHP5对OOP提供了良好的支持.如何使用OOP的思想来进行PHP的高级编程,对于提高PHP编程能力和规划好Web开发构架都是非常有意义的.下面我们就通过实例来说明使用PHP的OOP进行编程的实际意义和应用方法. 我们通常在做一个有数据库后台的网站的时候,都会考虑到程序需要适用于不同的应用环境.和其他编程语言有所不同的是,在PHP中,操作数据库的是一系列的具体功能函数(如

拖拽系列二、利用JS面向对象OOP思想实现拖拽封装

接着上一篇拖拽系列一.JavaScript实现简单的拖拽效果这一篇博客将接着对上一节实现代码利用JS面向对象(OOP)思维对上一节代码进行封装; 使其模块化.避免全局函数污染.方便后期维护和调用:写到这里突然想起一句话“没有任何一个题目是彻底完成的.总还会有很多事情可做......” 我想这句话程序开发大概也适用吧,前端开发人员总是可以结合自己之前学到“拖拽”相关知识,不断扩展.完善.无穷无尽.......     利用匿名函数自执行实现封装 ;(function(){ //do somethi

.NET技术汇总(C#)-------面向对象(OOP)(转载)

转:http://www.cnblogs.com/MR-LIUB/p/3381699.html 什么是面向对象(OOP),面向对象有什么作用,有什么好处,面向对象是如何实现的. 语言分两种:一种是面向对象一种是面向过程,C#,VB,JAVA等是属于面向语言.C,C++等属于面向过程的语言 面向对象:面向对象语言的产生不是为了取代面向过程,想对于来说面向对象的语言弥补了面向过程中的一些不足.面向对象,对象就是人们要进行研究的任何事物,世上的任何东西对于我们来说都可以叫做对象,面向对象思想比较抽象,

PHP面向对象(OOP)编程入门教程链接

PHP官方学习OOP: http://php.net/manual/zh/oop5.intro.php 以下链接来源: http://blog.snsgou.com/post-41.html PHP面向对象(OOP)编程完全教程:1.什么是面向对象? PHP面向对象(OOP)编程完全教程:2.什么是类,什么是对象,类和对象这间的关系 PHP面向对象(OOP)编程完全教程:3.什么是面向对象编程呢? PHP面向对象(OOP)编程完全教程:4.如何抽象出一个类? PHP面向对象(OOP)编程完全教程

PHP面向对象(OOP)编程入门教程

面向对象编程(OOP)是我们编程的一项基本技能,PHP5对OOP提供了良好的支持.如何使用OOP的思想来进行PHP的高级编程,对于提高 PHP编程能力和规划好Web开发构架都是非常有意义的.下面我们就通过实例来说明使用PHP的OOP进行编程的实际意义和应用方法. 我们通常在做一个有数据库后台的网站的时候,都会考虑到程序需要适用于不同的应用环境.和其他编程语言有所不同的是,在PHP中,操作数据库的 是一系列的具体功能函数(如果你不使用ODBC接口的话).这样做虽然效率很高,但是封装却不够.如果有一

面向对象 OOP

[面向对象编程OOP] 1 语言的分类 面向机器 :汇编语言 面向过程 :c语言 面向对象 :c++ Java PHP等 2 面向过程与面向对象 面向过程:专注于如何去解决一个问题的过程,编程特点是一个函数去实现过程操作,没有类与对象的概念 面向对象:专注于有哪一个对象实体去解决这个问题,编程特点是:出现一个个的类,由类去生成对象 [面向对象的三大特征] 继承 封装 多态 类与对象的关系 1类 : 一群有相同特征(属性)和行为(方法)的集合 人类 属性:身高 ,年龄.体重, 方法:吃饭 睡觉 敲

【PHP面向对象(OOP)编程入门教程】1.什么是面向对象?

面向对象编程(Object Oriented Programming, OOP, 面向对象程序设计)是一种计算机编程架构,OOP的一条基本原则是计算机程序是由单个能够起到子程序作用的单元或对象组合而成,OOP达到了软件工程的三 个目标:重用性.灵活性和扩展性.为了实现整体运算,每个对象都能够接收信息.处理数据和向其它对象发送信息.面向对象一直是软件开发领域内比较热门的话 题,首先,面向对象符合人类看待事物的一般规律.其次,采用面向对象方法可以使系统各部分各司其职.各尽所能.为编程人员敞开了一扇大

python 面向对象oop

1 oop 对象世界观  -- oop是目前人类认知最接近实际生活的语言 一切事务皆对象 对象有运动规律和内部状态 对象之间可以相互调用 2.面向对象 唯一性:对象具有唯一性,不存在两个相同的对象,除非他们是同一个对象 可以分类性 : 对象可以分类 3.oop 分类 封装 继承 多态 具体类: 结构 classs 类名: 类体 创建对象使用类名(__init__ 函数除第一个参数外的参数列表) 创建对象的时候 实际执行了 __init__函数, __init__ 并不会创建对象,但会初始化对象

面向对象OOP 01

<meta charset ="utf-8" /> <?php /* 1.什么是面向对象编程 OOP: (Object Oriented Programming,OOP,面向对象程序设计) 是一种计算机编程架构.OOP 的一条基本原则是计算机程序是由单个能够起到子程序作用 的单元或对象组合而成.OOP 达到了软件工程的三个主要目标:重用性.灵活性和扩展性. 面向对象三大特性 1. 封装性:对象的功能或者属性,用户可用使用,但是具体的代码用户是看不到 2. 继承性:就是

PHP面向对象(OOP)编程入门教程————如何实例化对象?

我们上面说过面向对象程序的单位就是对象,但对象又是通过类的实例化出来的,既然我们类会声明了,下一步就是实例化对象了. 当定义好类后,我们使用new关键字来生成一个对象. $对象名称 = new 类名称(); <?php class Person { //下面是人的成员属性 var $name; //人的名字 var $sex; //人的性别 var $age; //人的年龄 //下面是人的成员方法 function say() { //这个人可以说话的方法 echo "这个人在说话&quo