摘自J道banq:
>抱怨java的new浪费了太多的内存,应该大量的使用static
前半句在某些情况下正确,后半句绝对错误。
为什么说这些程序员完全不懂OO呢?
因为他们只知道对象两个表面含义,却不懂对象背后的含义,对象重要特征是什么?对象重要的特征就是有生命的,有scope的,有生命周期的,这其实是一个很朴素的哲学思想,没有永垂不朽的东西,任何物体都是有生命的。既然,对象有生命,那就当然有生有死,在java中,对象什么时候死已经无需我们操心,因为有垃圾回收机制,我们程序员只要决定对象什么时候生就可以,也就是对象什么时候创建,以何种方式创建。
对象可以new方式创建,也可以使用创建模式创建,方式很多,Ioc模式的诞生,特别是自动配对auto wiring的IOC诞生,让对象的创建也无需我们来编码了,这更大大解决程序员的软件开发生产力,这也就是Jdon On Rails为什么快速的原因之一。
回到对象的生命周期上来,使用静态实际就是变态的延长对象的生命周期,虽然也解放了程序员,无需程序员照顾对象创建,但是这是一种错误的解放,是一种虽然简单,但是方向完全错误,可能导致更大性能陷阱的解决方式,这个我已经在单例是邪恶等帖子中反复表述,因为我们现在的软件是一个多线程环境,如果你使用静态,不但导致非OO系统,到处是长命百岁的对象,系统难于维护;更重要不小心就导致多线程变成单线程系统,也就是单用户系统,某个时刻只能一个用户操作这个系统。换句话说:就是系统缓慢,人操作一多就死机。
对于JAVA的底层有N多没有掌握。关于线程也是么子都不知道呢!
分享到:
相关推荐
Revit软件操作技巧——创建幕墙竖梃族 在此资源中,我们将详细介绍如何使用Revit软件创建幕墙竖梃族,包括幕墙竖梃族的定义、创建流程、 Revit公制详图的建立、嵌套Revit公制详图、建立Revit竖挺轮廓族、载入项目...
面向对象(Object-Oriented,简称OO)是一种广泛应用于软件工程和编程领域的哲学体系与科学体系,它改变了软件设计和实现的方式,强调以对象为核心,将数据和操作数据的方法封装在一起,通过对象之间的消息传递来...
在本课程中,我们将深入探讨SAP ABAP的面向对象技术在ALV(ABAP List Viewer)中的应用,这是SAP ABAP开发学习的第10课,专注于OOALV。这个主题对于任何想要在SAP系统中进行高效数据展现和处理的开发者来说都是至关...
1. 工厂模式(Factory Pattern):工厂模式是一种创建型设计模式,它提供了一个创建对象的接口,但让子类决定实例化哪一个类。这将类的实例化过程延迟到子类进行,增强了程序的可扩展性。 2. 单例模式(Singleton ...
1. 简单工厂模式:它定义了一个用于创建对象的静态工厂方法,客户端通过调用这个方法来获取所需的对象,而无需知道具体创建的过程。简单工厂模式适用于产品种类不多且不会频繁变化的情况。 2. 工厂方法模式:与简单...
在对象关系模型下,Oracle Spatial定义了一个核心的对象类型——SDO_GEOMETRY。这个类型包含了描述空间对象几何特性的各项属性,如SDO_GTYPE(表示几何对象的类型)、SDO_SRID(空间参考ID,用于定位几何对象的坐标...
1. 类(Class):类是创建对象的蓝图,它定义了对象的属性(数据成员)和行为(方法)。 2. 对象(Object):类的实例,每个对象都有其特有的属性值。 3. 继承(Inheritance):允许一个类(子类)继承另一个类...
本章可能涵盖了需求收集、用例分析、类图和对象图的创建,以及如何通过分析将现实世界的问题转化为软件模型。 **第11章 面向对象设计** 在设计阶段,OO设计原则和模式起着至关重要的作用。本章可能涵盖了设计原则...
面向对象(Object-Oriented,OO)是一种编程范式,主要应用于软件开发中,它将现实世界中的事物抽象为“对象”,并通过对象之间的交互来实现程序的功能。在本课件中,西安电子科技大学的陈平教授深入讲解了面向对象...
- 工厂模式(Factory Pattern):工厂模式是一种创建型设计模式,它提供了一种创建对象的最佳方式,通过抽象工厂来隔离具体类的生成过程。 - 单例模式(Singleton Pattern):单例模式确保一个类只有一个实例,并...
我们平常编程中,当使用"new"关键字创建一个对象时,此时该类就依赖与这个对象,也就是他们之间的耦合度高, 当需求变化时,我们就不得不去修改此类的源码,此时我们可以运用面向对象(OO)的很重要的原则去解决这一...
- **解决方案**:为了解决这些问题,本文采用了面向对象的设计理念,通过对工作票流程的关键环节——创建和审批流程——应用设计模式,来增强系统的灵活性和可重用性。 #### 设计模式的应用 - **工厂方法模式**:...
### 实战OO:开启征程——结尾篇:活动图与状态图在面向对象设计中的应用 在实战OO系列的“开启征程”篇章中,我们已经一起走过了一段从领域分析、用例建模到系统设计的漫长旅程。在这个过程中,我们不仅深入理解了...
文章《OO真经——关于面向对象的哲学体系及科学体系的探讨》深入探讨了面向对象的内在哲学和科学原理。 #### 真经第一章:世界Weltanschauung 本章从世界观的角度出发,探讨了面向对象的基本思想及其与其他编程...
3. **工厂模式**:通过工厂方法来创建对象,可以避免直接在代码中使用构造函数创建对象,从而在不修改现有代码的情况下,轻松地添加新的对象类型。 4. **策略模式**:允许在运行时选择算法或行为,通过定义一系列的...
例如,工厂模式用于创建对象,单例模式确保一个类只有一个实例,观察者模式实现了一对多的依赖关系,当一个对象的状态改变时,所有依赖它的对象都会得到通知并自动更新。 在实际项目中,面向对象设计原则,如 SOLID...
第10章 用UML创建对象模型 154 10.1 什么是UML 154 10.2 类图的结构 155 10.3 属性和方法 156 10.3.1 属性 156 10.3.2 方法 157 10.4 访问指示 157 10.5 继承 158 10.6 接口 159 10.7 组合 160 10.7.1 ...
3. 类:类是对一组具有相同属性和行为的对象的抽象,是创建对象的模板。 4. 继承:继承允许一个类(子类)从另一个类(父类)继承属性和行为,实现代码的重用和扩展。 5. 消息:对象之间进行通信的方式,一个对象...
通过OO4O,开发者可以调用Oracle Spatial的功能,如创建、查询、更新和删除空间对象,以及执行复杂的地理空间分析。 在.NET环境中,使用OO4O时,首先需要在应用程序中引用Oracle的数据访问组件,并配置相应的连接...
本文通过实际案例——XX食品公司连锁店在线定料系统的开发过程,详细解析OO技术在实践中如何应用。 首先,OO理论并非仅仅局限于编程,它涵盖了软件生命周期的各个阶段,包括需求调研、分析、设计、开发、测试、维护...