面向对象,面向对象技术能力等级杂谈

能把面向对象和具体语言的对象抽象联系起来 在面向对象刚刚入门的时候,一大顿理论加上解释又是只言片语,什么原则,方法等根本好像是没有用的嘛。唯一看明白的就是对象,类就是Class。在编程的时候,碰到一个名词就把它写成class,以为这就是面向对象编程。拿图书馆案例来讲,初步分析后可能就把我们的学生Student作为我们的Class来编程,并设计了它的属性,方法和操作,具体来说就是给Student加上... [阅读全文]

用c实现面向对象,我对面向对象分析与设计与实现的一些看法

最近对OO的理解又有了一些新的认识,拿出来和大家分享一下。为了能让大家简单直观清晰的知道我想表达的主要意思,我不说废话了。直接提出问题,然后回答。1. 什么是真正的对象?2. 什么是面向对象分析阶段时的对象? 3. 什么是面向对象设计阶段时的对象?4. 什么是面向对象实现阶段时的对象?1. 真正的对象:我所理解的真正的对象就是现实生活中客观存在或不存在的真正的对象。这个对象有一个明显的特征就是它具... [阅读全文]

面向对象编程,JavaScript面向对象编程深入分析(三)

接JavaScript面向对象编程深入分析(一) JavaScript面向对象编程深入分析(二) 三. Javascript面向对象编程:非构造函数的继承 本节介绍不使用构造函数实现“继承”。 1. 什么是“非构造函数”的继承? 比如,现在有一个对象,叫做“中国人”。 var Chinese = { nation:中国 }; 还有一个对象,叫做“医生”。 var Doctor ... [阅读全文]

面向对象编程,JavaScript面向对象编程深入分析(一)

一. Javascript 面向对象编程:封装 Javascript是一种基于对象(object-based)的语言,你遇到的所有东西几乎都是对象。但是,它又不是一种真正的面向对象编程(OOP)语言,因为它的语法中没有class(类)。 那么,如果我们要把“属性”(property)和“方法”(method),封装成一个对象,甚至要从原型对象生成一个实例对象,我们应该怎么做呢? 1. 生... [阅读全文]

面向对象编程,《.NET4.0 面向对象编程漫谈》读书笔记 ——第14章 对象间的协作与信息交换

第14章 对象间的协作与信息交换 【简介】:面向对象的程序 = 对象 + 对象之间的相互协作关系。在任何一个面向对象程序开发过程中,设计好对象之间的协作关系与信息交换方式都属于开发的核心任务,本章主要介绍了“一对一”对象之间、“一对多”对象之间的相互协作与信息交换的基本方式等。 第1节 对象间信息交换的基本方式 1、 对象协作的本质:就是对象间信息... [阅读全文]

对象序列化,《.NET4.0 面向对象编程漫谈》读书笔记 ——第13章 对象的复制与序列化

第13章 对象的复制与序列化 【简介】:序列化技术是学习分布式软件系统开发技术(如WCF)的前提之一,本章主要介绍对象的浅复制与深复制、对象的序列化、对象序列化应用等。 第一节 对象的浅复制与深复制 1、 浅复制:是指当对象的字段值被复制时,字段引用的对象不会被复制。 例如,如果一个对象有一个指向字符串的字段,并且我们对该对象做了一个浅复制,那麽两个对象将引用同一个字符串。 2、 深复制:是对对象... [阅读全文]

面向对象编程,《.NET4.0 面向对象编程漫谈》读书笔记 ——第8章 神奇的委托

第8章 神奇的委托 【简述】:在.NET中,事件驱动、异步调用和Lambda都是建立于委托之上的。本章主要介绍委托的基础知识、泛型委托、Lambda及方法回调等。 第一节 委托的概念与使用 1、 概念:委托可以看成是一种数据类型,可以用于定义变量。但它所定义的变量能接收的值只能是一个方法。 2、 实例: Public class MathOpt { Public int Add(int ... [阅读全文]

面向接口编程,.NET简谈面向接口编程

过程式的开发方式已逐渐退出大众的眼线,随之而来的是各种各样的高抽象的开发模式;我们不得不承认在没有设计模式的时候,我们很难总结出有价值的开发模型,便于以后重复使用和推广;面向对象的流行,让我们开发人员重新站在一个高的起点来看待软件模型,抽象固然是好事,但是也给初学者带来了迷惑,将软件中的东西都想成很简单的封装,我们只需要调用就行,这样越来越多的开发人员开始慢慢的往上“浮”[... [阅读全文]

面向对象,面向对象随想 -- 多用组合来代替继承

让我们先来简单看看什么是继承和组合。只是例子,不是概念。 假设有三个特性(模块), ModuleA, ModuleB, ModuleC。有两个类 ClassA 和 ClassB 需要使用它们。ClassA 会用到 ModuleA 和 ModuleB,ClassB 会用到全部三个特性。而且我们还假设现在全部A,B和C模块会只被ClassA和ClassB用到。 继承: class ClassA { f... [阅读全文]

面向对象,谈谈面向对象

对再论抽象一文的回应 园子里的怪怪同学写了一篇再论抽象的文章来谈论一些抽象的事儿,承蒙怪怪看得起以拙作作为讨论基础。我承认我的上一篇文章跟抽象实际关系真的不是很大。但我想说:抽象是一个过程。世界上肯定有那么一些牛人能一下子提出很抽象的玩意儿(让我想起了行为艺术),但大部分还是不能,所以我们可能需要不断的迂回来达到抽象层次提高的目的。这是我将这几篇文章叫做之路的原因。 还有一点,在现实中看过了太多的... [阅读全文]

面向对象编程,《.NET4.0 面向对象编程漫谈》读书笔记 ——第3章 字段、方法与属性漫谈

【简述】:本章主要讲述类相关的字段、属性、方法。其中字段与属性介绍了初始化方式、WPF依赖属性等,方法介绍了运算符重载、分部方法、扩展方法以及与方法相关的命名参数、可选参数、方法的JIT编译原理等。 第一节 、字段与属性的初始化方式汇总 1、对象与集合初始化器:可初始化部分的字段。 A obj3 = new A{IntValue = 100}; //对象初始化器 List objs = new ... [阅读全文]

面向对象编程,《.NET4.0 面向对象编程漫谈》读书笔记 ——第2章 数据类型趣谈

【简述:】 本章主要谈了值类型与引用类型。其中值类型讲述了BigInteger、Nullable,引用类型讲述了String。通过Object类型值类型与引用类型建立关联。最后谈了用途极广的泛型。 第一节 数值类型的使用 1、 数值类型的自动转换与强制转换 当数值类型由“由大到小”转换时----如double类型转为float类型时,这时需要强制转换,可能造成数据丢失,因此... [阅读全文]

面向对象,做Web应用程序时应该如何面向对象杂谈

做Web应用程序很多年了,却一直使用非常熟悉的方式,三层结构(Dal,bll,Web),可是仔细一想哪里有用到面向对象?貌似没有吧,顶多隔离业务和数据了。那么MVC呢,它其实也只是改变了我们编程的方式,准确的说是页面的处理方式,我们一样写dal,bll,web。可是有的时候却很想用用面向对象,可是思考许久却不知如何下手,不知道大家有没有有过类假的情景。 做Web应用程序时,大多都是对数据的CRU... [阅读全文]

面向对象编程,面向对象编程已死

本文是从 Object Oriented Programming is Dead 这篇文章翻译而来。 那好吧,也许是没死,但卡内基.梅隆大学的Robert Harper教授却说(Teaching FP to freshmen)面向对象编程和设计“不适合做为现代计算机科学教学课程”,详细的内容引用如下: “面向对象编程应该完全的从基础课程中删除掉,因为它既是反... [阅读全文]

面向对象编程,C#面向对象编程的3个支柱

OOP的支柱: 封装:隐藏一个对象的内部实现和保护数据完整性。 继承:促进代码重用。 多态:用同样的方式处理相关的对象。 封装的作用 OOP的第一个支柱是封装,是将对象用户不必了解的实现细节隐藏起来。如:你正在使用DatabaseReader类,它有Open()与Close()两个方法。 //DatabaseReader封裝了操作数据库的细节 DatabaseReader dr=new Dat... [阅读全文]

面向对象,不要用面向对象来迷惑程序员新手

本文是从 Don't Distract New Programmers with OOP 这篇文章翻译而来。 当我被问及“哪种编程语言是教我[儿子/女儿/其他没有编程经验的人的首选]时,”我的答案这五年多来一直没变:Python。 这也许会出乎你的意料,经常有人会说这是非主流语言,但我坚持我的看法。 Python十分适合解决很多简单的、有趣的问题,比用C语言要省力的多。(这... [阅读全文]

面向对象,不要用面向对象来迷惑程序员新手

本文是从 Don't Distract New Programmers with OOP 这篇文章翻译而来。 当我被问及“哪种编程语言是教我[儿子/女儿/其他没有编程经验的人的首选]时,”我的答案这五年多来一直没变:Python。 这也许会出乎你的意料,经常有人会说这是非主流语言,但我坚持我的看法。 Python十分适合解决很多简单的、有趣的问题,比用C语言要省力的多。(... [阅读全文]

面向对象编程,javascript面向对象编程的学习---对象继承

原文链接:http://www.ffasp.com/content.asp?newsid=1685 继承,通俗地说,之前你写过一些类,这些类中有一些是而你现在要写的类的功能的子集或者基本相同,那么你不用完全重新写一个新的类,你可以把之前写的类拿过来使用.这样的一种代码重用过程就叫做继承. 深入学习javascript继承之前,先了解下面的几个概念: 父类:被继承的类 子类:由继承得来的类 超类:也... [阅读全文]

面向对象编程,javascript面向对象编程的学习(基础)

原文链接:http://www.ffasp.com/content.asp?newsid=1684 --什么是类和对象 这是所有面向对象编程之前必须弄明白的. 所谓类:简单地说就是模板,说的专业一些,是一类具有某种性质的物的集合. 比如:人就是一个类,车也是一个类,等等. 所谓对象:就是类的具体实现. 如上面所说,人是一个类,一个具体的人就是一个对象,比如张三. 对象是类的实例化后的结果.jav... [阅读全文]

面向对象编程,面向对象编程--听高翔“面向对象与生活”有感

面向对象编程是什么?无疑面向对象编程首先是编程,然后编程前面有定语“面向对象”。我很不客气的在前面加一个“你”,你面向对象编程。 为什么把这么个话题又拿出来又说呢!主要是我觉得这个话题虽然说了又说但是很多人还是不明白,所以很有必要拿出来再说一说,当然这并不是说我比别人解释的更清楚,只是想拿出我的体会来分享给大家。 那谁能先说说面向对象编程,肯定无数人... [阅读全文]

面向对象,J2SE面向对象的几点总结

1.对成员变量的操作只能放在方法中,方法可以对成员变量进行操作形成算法。如: class A{ int a=9; float v=12.6f; void f(){ a=12; b=12.56f; } } 以上是可以的,但是不可以这样: class A{ int a; float b=12.b;//非法的,这是赋值语句,不是变量声明 a=12.56f; void f(){} } 2.构造方法是一种特... [阅读全文]

面向对象编程,PHP中实现面向对象编程

如果您有疑问或建议,请进入技术讨论区交流  这篇文章介绍在PHP的面向对象编程(OOP)。我将演示如何用面向对象的概念编出较少的代码但更好的程序。祝大家好运。 面向对象编程的概念对每一个作者来说都有不同的看法,我提醒一下一个面向对象语言应有的东西: - 数据抽象和信息隐藏 - 继承 - 多态性 在PHP中使用类进行封装的办法: class Something { // In OOP c... [阅读全文]

面向对象编程,PHP面向对象编程快速入门

如果您有疑问或建议,请进入技术讨论区交流 面向对象编程(OOP)是我们编程的一项基本技能,PHP4对OOP提供了良好的支持。如何使用OOP的思想来进行PHP的高级编程,对于提高PHP编程能力和规划好Web开发构架都是非常有意义的。下面我们就通过实例来说明使用PHP的OOP进行编程的实际意义和应用方法。 我们通常在做一个有数据库后台的网站的时候,都会考虑到程序需要适用于不同的应用环境。和其他编程... [阅读全文]

css面向对象,XHTML与CSS的面向对象编程

点评:要是XHTML与CSS能面向对象。。太阳应该从北边升起了。但是,凡事都应该带着OO的思想来看问题,也勉强可以凑数拉。其实,早在零几年就有人提出了OO-style,不过已找不到。 那要怎样OO呢?现在大家都知道CSS是可以介样写滴: .G_G { /* xxxxxx */ } 我们可以把它大约要是XHTML与CSS能面向对象。。太阳应该从北边升起了。但是,凡事都应该带着OO的思想来看问题... [阅读全文]

js面向对象,JS面向对象编程 for Cookie

各位如果有更好的见解可讨论下! 复制代码 代码如下: /* * Js Class Cookie * Author:Mr Co */ var Cookie = function(/*Cookie名称*/name){ this.$name = name; var allcookies = document.cookie; if(allcookies == '') return; var cookies... [阅读全文]

js面向对象,JS面向对象编程之对象使用分析

因为大家总是用面向过程的编程思想来写JS代码,而且也由于网络上充斥了太多小“巧”的JS代码段,很多都是随意而为,很不规范,这也就造成了大家对JS的“误解”,一味的认为它就是一个辅助的小东东,而不适合做大的东西开发。但是自从AJAX兴起后,大量的JS代码编写要求人们具备像写JAVA类似的代码一样,能够面向对象进行开发。 所以下面就结合我自己的体会和所学习的东东和大家一起来学习在JS中如何使用面向对象... [阅读全文]

aop的动态代理,.NET中通过代理实现面向方面编程(AOP)

上篇文章我说到了在代码中可以利用泛型委托来封装异常处理,这样可以让程序看起来更加清晰,要想完成功能需要调用者调用指定的工厂方法才行,但要想改变某些程序员的编码习惯我想是一件比较困难的事情。有朋友说利用委托来实现异常处理并不算是真正意义上的AOP,因为传统的AOP并不需要客户端做代码结构的变更,最多也就是配置上的问题。但在.net中要想实现AOP,我想最方便的实现机制要属代理机制了,但只要利用代理,... [阅读全文]

面向对象,为什么要面向对象呢

之前写过一篇如果你也是.NET程序员,收到不少留言,各种意见都有,之前的说话方式不够友好,特此向因看过而心生郁闷的人道歉。 问题在于我为什么不停的提面向对象呢。说来我并不是面向对象圣徒,我真正想说的是“结构化”的编程思想和代码组织方式的培养和习惯,我说的结构化是“有结构的“,这样的结构包括但并不限于面向过程和面向对象。 这样就有个... [阅读全文]

面向对象编程:《Java面向对象编程》学习笔记13——多线程的相关事项

1.关于线程安全类:不可变类总是线程安全的,而可变类的线程安全往往以降低并发性能为代价,注意只对可能导致资源竞争的代码进行synchronized,并且在需要提供单线程和多线程两个环境下通过继承和覆盖而在内部建立采用同步机制的内部类。2.以下情况持有锁的线程会释放锁:执行完同步代码块执行同步代码块中,遇到异常导致线程终止。执行同步代码块中,执行了锁对象所属的wait()方法。 而以下情况线程是不... [阅读全文]

面向对象编程:《Java面向对象编程》学习笔记11——后台线程

概念类似于Linux的后台守护进程,JVM的垃圾回收线程就是典型的后台线程,它负责回收其他线程不再使用的内存。只有前台的所有线程结束后后台线程才会结束。main线程默认为前台线程,而由前台线程创建的线程都是前台线程(后台创建的则是后台线程)。Thread类的setDaemon()方法设置后台线程(线程启动之前),isDaemon()方法判断后台线程。下边的实例程序我们在主线程中一直将a加1,sta... [阅读全文]
1 共1条 分1页