`
longxiaoyan
  • 浏览: 77315 次
  • 性别: Icon_minigender_1
  • 来自: 桂-京
社区版块
存档分类
最新评论

小谈面向对象

    博客分类:
  • J2EE
 
阅读更多
面向对象的一个好处就是可以把抽象的东西对象化,具体化,使用起来就十分方便。
举个例子:tomcat封装了http请求,请求中的每一个元素都被封装成Request的一个属性。这样当我们发送一个http请求时,所有元素都分别分派给Request的一个实例,使用的时候就只操作这个实例就行了。而不用每次使用时都去解析http请求,是不是方便许多了。下面是Request封装的属性:

org.apache.coyote. Request:
public final class Request {
    // --------------------------------- Instance Variables
    private int serverPort = -1;
    private MessageBytes serverNameMB = MessageBytes.newInstance();
    private int remotePort;
    private int localPort;
    private MessageBytes schemeMB = MessageBytes.newInstance();
    private MessageBytes methodMB = MessageBytes.newInstance();
    private MessageBytes unparsedURIMB = MessageBytes.newInstance();
    private MessageBytes uriMB = MessageBytes.newInstance();
    private MessageBytes decodedUriMB = MessageBytes.newInstance();
    private MessageBytes queryMB = MessageBytes.newInstance();
    private MessageBytes protoMB = MessageBytes.newInstance();
    // remote address/host
    private MessageBytes remoteAddrMB = MessageBytes.newInstance();
    private MessageBytes localNameMB = MessageBytes.newInstance();
    private MessageBytes remoteHostMB = MessageBytes.newInstance();
    private MessageBytes localAddrMB = MessageBytes.newInstance();     
    private MimeHeaders headers = new MimeHeaders();
    private MessageBytes instanceId = MessageBytes.newInstance();
………
}
/*org.apache.tomcat.util.buf.MessageBytes:这是 一个接近底层的字符串处理类,为什么说是接近底层,是因为socket接收进来的都是字节类型,而java用的是char或者String,这之间的转换 涉及到编码问题和性能问题,所以凡是socket收进来的信息,全部都用这个类表示,只有当要输出字符串的时候,才会将里面的字节进行转换,实现一种延迟 加载的懒模式,被Tomcat底层所使用的Request类,就是大量使用了这个类来存放数据。*/


这里只是举了个小例子来抛砖引玉,面向对象的水是很深的,至于你信不信,我反正信了。
分享到:
评论

相关推荐

    浅谈面向对象程序设计

    面向对象程序设计(Object-Oriented Programming,简称OOP)是一种重要的编程范式,自Windows图形用户界面(GUI)普及以来,它已成为主流的程序设计方法。本文将深入探讨面向对象程序设计的核心概念、特点以及它与...

    C#面向对象设计模式纵横谈(视频与源码)

    C#面向对象设计模式纵横谈(1):面向对象设计模式与原则 C#面向对象设计模式纵横谈(2):Singleton 单件(创建型模式) C#面向对象设计模式纵横谈(3):Abstract Factory 抽象工厂模式(创建型模式) C#面向对象设计...

    浅谈面向过程与面向对象编程思想_以五子棋小游戏开发为例

    面向过程与面向对象是两种不同的编程范式,它们在计算机科学中被广泛应用,并在五子棋小游戏的开发中体现得尤为明显。 首先,让我们来探讨面向过程的编程思想。面向过程的编程方法注重于算法的实现,将程序分解为一...

    也谈面向对象

    面向对象设计思想是一种重要的软件工程方法论,它改变了传统面向过程的编程模式,引入了一种更为灵活、模块化和可重用的编程方式。本文旨在深入探讨面向对象的基本概念、核心原则及其在软件开发中的应用。 ### 面向...

    C#面向对象设计模式纵横谈(1):面向对象设计模式与原则

    面向对象设计模式是软件开发中的重要工具,它们是经过时间考验和广泛实践验证的设计解决方案,旨在提高代码的可重用性、灵活性和可维护性。C#作为一款强大的面向对象编程语言,为开发者提供了实现这些设计模式的良好...

    浅谈面向对象建模语言UML.pdf

    根据提供的文件信息,本文将深入探讨面向对象建模语言UML的相关知识点,涵盖面向对象程序设计的基本概念、模型与建模的重要性及原则,以及UML的基本组成部分。 ### 一、面向对象程序设计 面向对象程序设计(Object...

    C#面向对象设计模式纵横谈 12种设计模式

    在编程领域,设计模式是解决常见问题的经过验证的、可重用的解决方案。...通过阅读《C#面向对象设计模式纵横谈》一书,你将能够深入了解这些模式的实现细节和应用场景,从而在实际开发中游刃有余。

    C#面向对象设计模式纵横谈视频以及源码

    本文将深入探讨“C#面向对象设计模式纵横谈”视频教程及其源码,帮助开发者理解和掌握这些模式在实际项目中的应用。 首先,我们要理解什么是设计模式。设计模式是软件设计中常见问题的解决方案模板,它描述了在特定...

    《C#面向对象设计模式纵横谈》.pdf

    ### C#面向对象设计模式知识点解析 #### 面向对象设计模式与原则 面向对象设计模式(OOP Design Patterns)是软件工程中用于解决常见设计问题的一种方案,目的是使软件更加可复用、灵活和易于维护。C#作为一门支持...

    C#面向对象设计模式纵横谈_5(0-24)

    《C#面向对象设计模式纵横谈》是由MSDN提供的webcast系列教程之一。MSDN特邀教师李建忠倾心打造。 这个系列的教程虽然是用C#语言描述的,但是对于使用其他面向对象对象语言的程序员来说也有很强的指导意义。毕竟教程...

    浅谈java面向对象和引用

    ### 浅谈Java面向对象与引用 在Java学习过程中,对于面向对象的理解和引用机制的掌握是至关重要的。本文将围绕这两个概念进行深入探讨,并针对初学者常见的疑惑点进行解答。 #### Java面向对象基础 Java是一种...

    C#面向对象设计模式纵横谈(25):设计模式总结

    在C#编程中,面向对象的设计模式是一种组织代码和解决常见问题的有效方法。设计模式是对在软件设计中经常出现的某类问题的通用解决方案的描述,它是在特定上下文中最佳实践的结果。本篇文章将对一系列重要的C#面向...

    C#面向对象设计模式纵横谈(11):Facade 外观模式(结构型模式) (Level 300)

    **外观模式(Facade Pattern)**是面向对象设计模式中的一种结构型模式,它提供了一个统一的接口,用于访问子系统中的各个部分。在C#编程中,外观模式可以帮助我们简化复杂的系统接口,使得客户端代码与复杂的内部...

    C#面向对象设计模式纵横谈(1):面向对象设计模式与原则.zip

    本资源“C#面向对象设计模式纵横谈(1):面向对象设计模式与原则”包含了对这一主题的深入探讨,包括PDF文档和视频教程,旨在帮助开发者理解并熟练应用这些模式。 PDF文档“20051011面向对象设计模式与原则”可能会...

    C#面向对象设计模式纵横谈系列课程[第2卷]

    WEBCASTC#面向对象设计模式纵横谈系列课程打包下载

    c#面向对象纵横谈(全)

    在IT行业中,面向对象编程(Object-Oriented Programming,简称OOP)是一种广泛采用的编程范式,尤其在C#这样的强类型语言中更是如此。本文将深入探讨C#中的面向对象特性,主要包括Singleton单例模式、Builder生成器...

    C#面向对象设计模式纵横谈系列课程[第4卷]

    WEBCASTC#面向对象设计模式纵横谈系列课程打包下载

Global site tag (gtag.js) - Google Analytics