Archive

‘学习笔记’ 分类存档

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方法。

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

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

Java Learning – Getter and Setter

在看到接口和继承时,讲到了setter和getter,那么这两个方法的存在意义到底是什么呢?上网查了下,都没有仔细讲解,只是说应该这样,保护成员变量,那么到底怎么保护?如果不使用,会导致什么?这些很少有人解释,也许是太简单了?!Anyway,下面我将针对这些疑问进行意义解答。

首先什么地方会用到这两种方法?

JAVA是面向对象的(OOB)语言,一切皆为对象,根据《面向接口编程详解(一)思想基础》作者的解释,OOB要符合真实世界的运行状况。在真实世界,很多东西是被隐藏而不被对象(人)所知道,如你不需要知道汽车的内部发动机是如何运行的,只要会开车就行了,开车的界面就是接口,在接口上,我要保证不能通过挪动方向盘就把车玩坏了,所以我给方向盘做了限制,只能左右转动,不能上下转动,因为我的内部机制不了解上下运动,所以这就需要使用setter和gettr的方法,只接收左右信息,不接收上下信息(当然现实中也没上下,只是打比方)。
完整阅读

Java Learning – Basic 01

买了IZ0-803认证学习指南,打算好好过一遍JAVA。在看书过程中,突然感慨时代在进步,04-05年在大学学JAVA时,教材烂的跟祥一样,而现在的教材讲的真是浅显易懂呀!

知识点总结:

1. 在java.lang.*是默认import的,这是java的核心包
2. 在上一篇总结里,也简单说明了包的基本概念,它就是分层的概念,也可以理解文件的路径,这样可以把相同名字的类放到不同的package中,方便用反domain的方式引用(如 package com.ocaj.exam.tutorial;)
3. java编译class文件时不能带后缀名,如:

yonzhao2-mac:Desktop zhaoyong$ javac test.java
yonzhao2-mac:Desktop zhaoyong$ ls |grep test
test.class
test.java
yonzhao2-mac:Desktop zhaoyong$ ls -l |grep test
-rw-r--r--   1 zhaoyong  staff         416  2 23 13:29 test.class
-rw-r--r--   1 zhaoyong  staff         108  2 23 09:20 test.java
yonzhao2-mac:Desktop zhaoyong$ 
yonzhao2-mac:Desktop zhaoyong$ java test.class
错误: 找不到或无法加载主类 test.class
yonzhao2-mac:Desktop zhaoyong$ 
yonzhao2-mac:Desktop zhaoyong$ java test
test-classpath

完整阅读

TCL 正则表达式

基本正则表达式:

tcl-regex-01
完整阅读

blonde teen swallows load.xxx videos