1 , 面向对象编程面向对象很简单啊,好比汽车就是一个对象 , 但是对象里包含许多类,好比汽车的牌子,价格,性能等等 。面向对象编程就是要求在写很多类的时候,并不是都把他们一个写出来,那样很繁琐,可以专门写一个类,这个类就是他们的相同的属性和方法,然后在具体的类只要继承这个相同的类就可以了 。这是我的理解,有什么不对请指出!例如classPerson{private Stirng name;private Stirng age;publicPerson(){}public void say() {System.out.println(“姓名"+name+”年龄"+age); }}classStudents extends Person{public Students (){}private String classid;public void talk() {System.out.println("班级"+classid); }}面向对象就是把一个对象看成实体类!而一个实体类有它的属性和方法;比如以一辆车为对象:开车,倒车,刹车等这些都是这个车对象的一些属性!而车子的外观和色彩等是可以改变的这些就是方法!不知道我背着说的这些是否正确!就是把一些共同的东西弄成了类,
2,什么是面向对象编程面向"对象"编程,很重要的一点就是其中必须要意识到,对象,对象,一切万物皆为对象,比如说具体的一个人,它也是一个对象,这个对象有哪些特征呢?又有哪些行为呢?对于特征:身高,高还是矮,有多高体重,轻不是重,有多重,等等到,对于行为:能不能走路,能不能吃饭,能不能跑,等等,,根对象紧密联系在一起的是"类"那就是某一类对象的模型,比如说汽车生产时需要的模型,它是一个抽象体,而对象是一个具体的某样东西.自我感觉,面向对象编程,最重要的一点,就是自己要领悟到,面对的是对象.一句话, 就是按照自然界事物的存在方式来组织程序.它通过给程序中加入扩展语句,把函数“封装”进编程所必需的“对象”中 。面向对象的编程语言使得复杂的工作条理清晰、编写容易 。说它是一场革命,不是对对象本身而言,而是对它们处理工作的能力而言 。对象并不与传统程序设计和编程方法兼容,只是部分面向对象反而会使情形更糟 。除非整个开发环境都是面向对象的,否则对象产生的好处还没有带来的麻烦多 。有人可能会说PHP不是一个真正的面向对象编程的语言,PHP 是一个混合型 语言 , 你可以使用面向对象编程 , 也可以使用传统的过程化编程 。然而 , 对于大型项目的开发,你可能想需要在PHP中使用纯的面向对象编程去声明类,而且在你的项目开发只用对象和类 。随着项目越来越大,使用面向对象编程可能会有帮助 , 面向对象编程代码很容易维护,容易理解和重复使用,这些就是软件工程的基础 。在基于Web的项目中应用这些概念就成为将来网站成功的关键 。对象(Object)是问题域或实现域中某些事物的一个抽象,它反映此事物在系统中需要保存的信息和发挥的作用;它是一组属性和有权对这些属性进行操作的一组服务的封装体 。关于对象要从两方面理解:一方面指系统所要处理的现实世界中的对象;另一方面对象是计算机不直接处理的对象,而是处理相应的计算机表示,这种计算机表示也称为对象 。简单的来说,一个人就是一个对象 , 一个尺子也可以说是个对象 。面向对象主要相对与面向过程来说的...也就是说,在编程时候把需要任一实现看成是面对对象的操作... 这是在c++出现之后的一种编程思想,把任意看成是能够操作的对象可以让程序的条理更加清晰,更加容易理解...不过,我觉得这只是一种看待的方式,就编程本身而言都是面向对象和面向过程相结合的... 对象便于封装可以操作的东西,给编程提供接口,让他们等到共同协作完成某个工作,即是一种过程...就语言来说,c++ java vb等都提供面向对象的模式,当然java是典型的代表,它是完全面向对象的,"万事万物皆对象"...面向对象编程,英文简写oop(Object-Oriented Programming)
3,什么叫面向变量编程1.其实程序的传递就是变量的传递,变量是任何编程中不可缺少的因素 。随着很多模式和编程方式的出现,应用设计可能层次比较清楚,更宜人理解 。然而变量将变得很多,同样作用的变量在不同的层中可能不一样 , 而且随着不同开发人员在同一时间开发不同的层或者不同时间开发同一模块都可能根据自己的想法声明或者定义某个变量,而他们所定义的这个变量其实都是一样的,理论上应该是一个变量 , 或者说至少命名应该一样 。如果能归为同样命名的变量,那就能很大程度上减少维护和开发的工作 。所以能否将同样功能的变量进行统一命名就很有必要 。2.了解变量其实就是了解业务,虽然很早就强调文档,强调业务知识的学习 , 然而我觉得看程序其实是了解业务的最好方法,但条件是程序比较清楚,这里包括应用的构架清晰,具有相应的备注以及变量的含义清晰 。变量一个很重要的属性是她的scope , 根据scope我们可以将用到的变量进行分类,帮助我们理解 。下面我就web应用将变量scope进行分类(其实同样适用于其他应用):我们把变量分为两大类,一类是 面向变量所关心的,他具有跨越型传递性,他这里的跨越型传递性表示该变量的所附属的值会传递到下个地方,这个地方可以是下个页面, 可以是服务器 可以是数据库中我们称该类变量为前锋型变量 。另一类是 面向对象所不关心的,他不具有跨越型传递性,他只是作为临时中介,比如某个页面的中的临时变量,java 方法中的临时变量. 他们不是我们所关心的,我们称这里变量为候补型变量 。对于面向对象的编程我们的原则是:前锋型变量命名要很清晰,要能够联动,能串成串,不要冗余;候补型变量命名要简洁,最好不要游离在方法外,在方法中产生,在方法中消亡 。而对于前锋型变量 我认为因为他承载着有效数据,他的理解往往反映了业务,并且它是全局性的,具有跨越型的传递,所以他的重要性会更大一点,那么针对他能有很多tool 可以做 。Tool 1:前锋变量联动机功能描述:在页面上定义一个前锋型变量,那么可以自动在数据库中添加该字段 在DAO层 Business层添加该变量,同时可以实现修改某个页面变量 同时数据库以及各个层都能改变该变量 。或者 在数据库层添加某个字段 对应能产生页面,DAOBusiness的前锋型变量.Tool2: 前锋变量检查工具功能描述:可以对某个页面,某个配置文件,数据库 查找所有的前锋型变量 。将这些变量陈列出来给开发人员或者管理人员来分析 。是否还有其他idea? 请帮忙想想 。。。尽量不要过多全局变量,除非这个变量是在全局都用到的 。关于new局部变量 , 由于它的声明周期只是在它声明的那个局部,而全局变量的生命周期是整个程序 。所以它并不会过多地占用资源 。除非是在全局都会用到的变量,这样用局部变量的话就会在每一局部都声明一次会代码冗余 。所以还是尽可能地去使用局部变量,如果一定要用全局的话,你把互斥锁写好,多线程调用的时候就没问题了 。由于没有具体地例子也只能写这么多了【面向类编程,面向对象编程】
4 , 面向方面编程的简介在考虑对象及对象与其他对象的关系时,我们通常会想到继承这个术语 。例如 , 定义某一个抽象类— Dog 类 。在标识相似的一些类但每个类又有各自的独特行为时 , 通常使用继承来扩展功能 。举例来说,如果标识了 Poodle,则可以说一个 Poodle 是一个 Dog , 即 Poodle继承了 Dog 。到此为止都似乎不错,但是如果定义另一个以后标识为 Obedient Dog 的独特行为又会怎样呢?当然,不是所有的 Dogs 都很驯服,所以 Dog 类不能包含 obedience 行为 。此外,如果要创建从 Dog继承的 Obedient Dog 类,那么 Poodle 放在这个层次结构中的哪个位置合适呢?Poodle 是一个 Dog,但是 Poodle 不一定 obedient;那么 Poodle 是继承于 Dog 还是 Obedient Dog 呢?都不是,我们可以将驯服看作一个方面,将其应用到任何一类驯服的 Dog,我们反对以不恰当的方式强制将该行为放在 Dog 层次结构中 。在软件术语中 , 面向方面的编程能够独立于任何继承层次结构而应用改变类或对象行为的方面 。然后,在运行时或编译时应用这些方面 。举一个关于AOP的示例,然后进行描述 , 说明起来比较容易 。首先 , 定义四个关键的 AOP 术语,这很重要,因为我将反复使用它们:接合点 (Joinpoint) — 代码中定义明确的可识别的点 。切点 (Pointcut) — 通过配置或编码指定接合点的一种方法 。通知 (Advice) — 表示需要执行交叉切割动作的一种方法混入 (Mixin) — 通过将一个类的实例混入目标类的实例引入新行为 。为了更好地理解这些术语,可以将接合点看作程序流中定义好的一点 。说明接合点的一个很好的示例是:在代码调用一个方法时,发生调用的那一点被认为是一个接合点 。切点用于指定或定义希望在程序流中截获的接合点 。切点还包含一个通知,该通知在到达接合点时发生 。因此,如果在一个调用的特定方法上定义一个切点,那么在调用该方法或接合点时,AOP 框架将截获该切点,同时还将执行切点的通知 。通知有几种类型,但是最常见的情况是将其看作要调用的另一个方法 。在调用一个带有切点的方法时,要执行的通知将是另一个要调用的方法 。要调用的这个通知或方法可以是对象中被截获的方法 , 也可以是混入的另一个对象中的方法 。我们将在后面进一步解释混入 。我用自己的话这样讲吧:1.面向对象主要体现在自定义类上,这是与面向过程编程有着最大区别的地方(面向过程是用函数封装一个操作,c语言的特点);2.一个类就是一个用户定义类型,我们直接使用的int ,float等等其实也都是一个类,只是它们是现成的,不用我们自定义罢了 。自定义类a的方法:class a//数据成员和成员函数;};3.至于对象,也就是类的一个实例,比如 , 以上面的类a为例 , 创建一个对象object(或者实例)的方法如下:a object;或者直接在类的定义中这么写:class a//数据成员和成员函数;}object;此时,object就是自定义类型a的一个对象,object具有a中具有的属性和操作(即数据成员和成员函数) 。3.谈到类与类之间的层次关系,就是继承的概念了 。比如自定义了两个类:经理manager和员工employee经理类中的属性有:姓名,性别 , 部门,工龄,管理者级别 , 管理的雇员列表员工类中的属性有:姓名,性别,部门,工龄此时,在定义二者的时候,就可以使用继承机制,即:经理类可以由员工类继承而来clss manager: public employee//属性有管理者级别和管理的雇员列表//其他的属性已在employee中体现//……};这里,emloyee称为基类或者父类 , manager称为派生类或者子类 。4.至于域的概念,在理解面向对象编程机制中并不是重点 。希望对你有所帮助~
推荐阅读
- 苹果手机在哪里设置语言改中文,苹果手机设置从英文怎么换成中文
- 苹果可用的自动点击器,苹果5s手机自动点击屏幕是不是主板的问题 玩着玩着就会这样 求高手
- 苹果手机怎么切换语言输入法,苹果怎么切换输入法
- 易语言视频教程全集,易语言快速入门视频
- 快手下载免费,千年 神风快手 在哪下载啊 要能加IP的好久没玩了
- java编程入门资料,JAVA基础资料
- 七大编程语言,编程语言有哪些
- 简述模块化编程思想,软件模块化的思想和面向构件的思想有什么不同如何和面向对象开发
- dev c 编写c语言,怎么用Dev C 5编译C语言