Archive

‘Programmer’ 分类存档

JAVA Jung2 drawing network topology

看到同事用Python写了一个画topology的脚本,感觉很有意思,如果优化下,功能会更实用。最近在看java,是否java也有很好的API可以用?有了这种想法就来Google下吧,在Stackoverflow上发现了两篇需求差不多的文章:
How to dynamically display a simulated network topology in Java
comparing open source java graph drawing frameworks(JUNG and Prefuse) for drawing network topology

上面提到了几个不错的API,JUNG,Prefuse和JGraphX,这偏文章只总结JUNG。关于JUNG的包可以通过下面官网下载:http://jung.sourceforge.net

最新的版本也是5年前的版本了:JUNG 2.0.1,下载下来后是一个zip包,里面包含所有相关的JAR文件,解压后放好,可以随时调用,下面是介绍如何通过Eclipse调用JUNG2:
完整阅读

Eclipse install WindowBuilder pro

WindowBuilder pro是Eclipse可视化制作JAVA UI的插件,如何安装此插件呢?网上留的地址都是Google的地址,很多都不能用了,所以简单在此处说明下,直接去Eclipse官网:
http://eclipse.org/windowbuilder/download.php

找到对应的Eclipse版本,我的是4.3
java-eclipse-windowbuilder-01

在Eclipse点击“Install New Software”,把这个link放进去然后取个名字,就可以安装了,如图:
完整阅读

Java Learning – Basic 02

1. 构造函数:

特殊的方法,名字跟类名一直,无返回值,也没有void,如果没有构造函数,JVM在编译时会自动加一个隐含的构造函数,下面文章详细介绍了构造函数和this的用法:
http://blog.csdn.net/nypone/article/details/4693509

2. 对象传递和变量传递:

变量传递数值,但不改变原始数据;而对象传递的是引用,也就是地址,如果改变了,那么原始对象也会改变。这里扩展一下,如果If中==常用于基本数据类型的相等性,如果判断的是String对象呢?他判断的是两个对象的内存地址是否相同,如果想确内容是否相等,需要用equals方法

3. Java类的成员变量:

主要有两种,静态变量和实例变量。静态变量也是类变量,两种变量的界限也是一个在类,一个在实例。实例变量必须创建实例对象(new),才会分配空间;而只要加载类,就会给静态变量分配空间。

class Person
{
    int age ;
    String name; //实例变量,也叫对象变量
    static int totalFee; //静态变量,也叫类变量
    //类变量是所有对象共有,一个对象将它改变,其他对象得到的就是改变后的
    //而实例变量则属对象私有,某一个对象将其值改变,不影响其他对象
    public void showName()
    {
        System.out.print(this.name);
    }
    public static void showTotalFee()
    //类方法是属于与类相关的,公共的方法
    {
        System.out.print(totalFee);
    }
}

完整阅读

Java Learning – Enterprise Architect for UML

跟据上一篇转的文章《面向接口编程详解(二)——编程实例》,我们的程序中有几个类,虽然不多,但要review一遍,还是要一个类一个类的看,然后弄清楚之间的关系,这种方法很麻烦,特别是我这种对JAVA不是特别熟的人来说,还有什么好方法么?Ok,在上文中,原作者画了一张UML图,用来表示类与类之间的关系。不知道大家记不记得,这种图可以很快弄清之间的关系。那么是否有好用的UML生成工具呢?

今天我会介绍两个工具:

1. Eclipse插件 UML Green
2. Enterprise Architect –> 强烈推荐,也是我们今天的主角
完整阅读

面向接口编程详解(二)编程实例

JAVA学到接口了,发现书中说要培养面向接口编程的思想,可怎么也不明白,后来在Google中发现了这3篇连载,专讲面向接口编程的,这是第二篇,写的非常好,特此转发此文章,并存档保存!再此非常感谢作者“T2噬菌体”-张洋,文章出自CodingLabs,分割线下面是原文,在格式和文字上我会做稍许调整以适合我自己博客的风格,另外原作者用的是C来做的例子说明,我把其改成了JAVA!

通过上一篇文章的讨论,我想各位朋友对“面接接口编程”有了一个大致的了解。那么在这一篇里,我们用一个例子,让各位对这个重要的编程思想有个直观的印象。为充分考虑到初学者,所以这个例子非常简单,望各位高手见谅。

问题的提出

定义:现在我们要开发一个应用,模拟移动存储设备的读写,即计算机与U盘、MP3、移动硬盘等设备进行数据交换。

上下文(环境):已知要实现U盘、MP3播放器、移动硬盘三种移动存储设备,要求计算机能同这三种设备进行数据交换,并且以后可能会有新的第三方的移动存储设备,所以计算机必须有扩展性,能与目前未知而以后可能会出现的存储设备进行数据交换。各个存储设备间读、写的实现方法不同,U盘和移动硬盘只有这两个方法,MP3Player还有一个PlayMusic方法。

名词定义:数据交换={读,写}

看到上面的问题,我想各位脑子中一定有了不少想法,这是个很好解决的问题,很多方案都能达到效果。下面,我列举几个典型的方案。
完整阅读

blonde teen swallows load.xxx videos