wly603

随笔分类 -  java

C、C++、java中函数的参数:传值 or 传引用
摘要:概要: 教C语言课的过程中,发现很多学生对函数调用中的参数传递问题很容易糊涂。跟师弟交流的过程中,也发现大家对这个问题理解不够透彻。因此,结合本人自己的理解,将函数调用中的传值与传引用进行分析总结。一、函数调用中传递参数的类型 传值(pass by value):即形参接收实参传递过来的值,如果是自定义类型,要调用拷贝构造函数。函数处理的是形参的值。 传引用(pass by reference):引用表示与原对象完全相同,是同一个对象。若函数的形参是引用,则实参与形参间不存在参数传递,且函数内对形参的修改就是修改实参,因为它们是引用关系,是同一个对象。 1、C语言中,传递的参数类型只... 阅读全文

posted @ 2012-05-23 15:32 wly603 阅读(3457) 评论(5) 推荐(1)

设计模式---观察者模式
摘要:一、观察者模式(Observer) 定义了一种一对多的依赖关系,当一个对象的状态发生变化时,会通知所有观察者对象,使它们能够自动更新自己。二、四个角色 抽象通知者:Subject(抽象类或接口) 具体通知者:ConcreteSubject类,里面定义一个集合(如List),保存所有的观察者对象 抽象观察者:Observer(抽象类或接口) 具体观察者:ConcreteObserver类三、程序示例抽象通知者//抽象通知者://5个接口方法:增加观察者、移除观察者、设置状态、获取状态、通知public interface Subject { void attach(Observe... 阅读全文

posted @ 2012-04-15 14:08 wly603 阅读(194) 评论(0) 推荐(0)

设计模式---装饰模式
摘要:参考:http://blog.csdn.net/surprisesdu/article/details/605965 http://www.iteye.com/topic/121149一、装饰模式(Decorator) 动态地给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更加灵活,它是继承的一种替代方案。 与继承的对比: 都能实现功能的扩展,而装饰模式使用的是组合,避免了使用过多继承造成系统的复杂性增加。二、四个角色 抽象接口:给客户端提供功能接口 具体类:实现抽象接口,具体的原始功能类 装饰角色类:实现抽象接口,持有具体类的对象 具体的装饰... 阅读全文

posted @ 2012-04-14 13:07 wly603 阅读(126) 评论(0) 推荐(0)

设计模式---适配器模式
摘要:一、适配器模式 产生的背景: 对于客户的某个需求,有时,现有的类可以提供客户类的功能需要,但是它所提供的接口不一定是客户类所期望的 解决办法: 这时,应将现有的接口需要转化为客户类期望的接口,这样保证了对现有类的重用。如果不进行这样的转化,客户类就不能利用现有类所提供的功能。 适配器模式: 适配器模式建议定义一个包装类(适配器Adapter),包装有不兼容接口的对象(适配者Adaptee)。适配器提供客户类需要的接口,适配器接口的实现是把客户类的请求转化为对适配者的相应接口的调用。二、主要角色 Target:与客户端使用有关的接口 Adaptee:一个已经存在的类,它可... 阅读全文

posted @ 2012-04-12 14:10 wly603 阅读(194) 评论(0) 推荐(0)

设计模式----单例模式
摘要:一、单例模式(SingleTon) 保证一个类只有一个实例,并提供一个访问它的全局方法二、程序示例单例类//单例模式package com;public class Singleton{ private static Singleton instance = null; //私有化的构造方法,不允许外部通过 new 来产生实例 private Singleton() { } public static Singleton getInstance() { if (instance == null) ... 阅读全文

posted @ 2012-04-11 19:21 wly603 阅读(177) 评论(0) 推荐(0)

设计模式-----抽象工厂模式
摘要:参考:http://blog.csdn.net/ipqxiang/article/details/1955677 程杰《大话设计模式》清华大学出版社一、抽象工厂模式 提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。二、四个重要角色(类) 抽象工厂、具体工厂、抽象产品、具体产品三、程序示例抽象工厂接口//抽象工厂模式package com;//抽象工厂接口:包括2个product: IUser IDepartmentpublic interface IFactory { IUser createUser(); IDepartment createDepartme... 阅读全文

posted @ 2012-04-11 19:14 wly603 阅读(258) 评论(0) 推荐(0)

ubuntu下eclipse输入不流畅
摘要:环境:ubuntu8.04.4 eclipse-jee-indigo-SR2下载使用了scim中文输入法1、问题描述 在eclipse中编程时,出现打一个字符串后,就不能再输入了。当点击保存工程后,又能继续输入。2、解决办法: a、修改scim配置 sudo gedit /etc/X11/xinit/xinput.d/scim 将xim修改为scim,即为GTK_IM_MODULE=scim b、再次设置系统默认的输入法为scim sudo update-alternatives --install /etc/X11/xinit/xinput.d/all_ALL xinput-all_ALL. 阅读全文

posted @ 2012-04-11 14:45 wly603 阅读(269) 评论(0) 推荐(0)

ubuntu 8.04.4 下jdk的安装及配置
摘要:环境 :Ubuntu 8.04.4 CPU:inteljdk版本: jdk1.7.0_03 安装步骤: 1、下载jdk。到oracle官网上下载jdk-7u3-linux-i586.tar.gz http://www.oracle.com/technetwork/java/javase/downloads/jdk-7u3-download-1501626.html2、直接解压。 tar -xf jdk-7u3-linux-i586.tar.gz 运行该命令后,会自动生成名为 jdk1.7.0_03 的文件夹。为了方便管理,我们新建一个名为 java 的文件夹,把 jdk1.7.0_03放... 阅读全文

posted @ 2012-04-10 21:36 wly603 阅读(238) 评论(0) 推荐(0)

导航