Archive

标签为 ‘JAVA’的文章

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

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学到接口了,发现书中说要培养面向接口编程的思想,可怎么也不明白,后来在Google中发现了这3篇连载,专讲面向接口编程的,刚看第一篇,写的非常好,特此转发此文章,并存档保存!再此非常感谢作者“T2噬菌体”-张洋,文章出自CodingLabs,分割线下面是原文,在格式上我会做稍许调整以适合我自己博客的风格

我想,对于各位使用面向对象编程语言的程序员来说,“接口”这个名词一定不陌生,但是不知各位有没有这样的疑惑:接口有什么用途?它和抽象类有什么区别?能不能用抽象类代替接口呢?而且,作为程序员,一定经常听到“面向接口编程”这个短语,那么它是什么意思?有什么思想内涵?和面向对象编程是什么关系?本文将一一解答这些疑问。

面向接口编程和面向对象编程是什么关系

首先,面向接口编程和面向对象编程并不是平级的,它并不是比面向对象编程更先进的一种独立的编程思想,而是附属于面向对象思想体系,属于其一部分。或者说,它是面向对象编程体系中的思想精髓之一。
完整阅读

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

完整阅读

Java Learning – HelloWorld

对于JAVA,感觉就像昨天的回忆,十年前,大学的毕设选择了JAVA,毕业后就放弃了编程,走了网络这条路。没想到走到现在,又要捡起原来放弃的东西。人生的道路还是很有意思的。学习JAVA的目的很简单,熟悉JAVA并能编一些与网络互动的小程序

在这篇文章里,我将简单介绍在MAC下如何搭建JAVA开发环境,以及对JAVA的HelloWorld的理解。网上有很多好用的教材,就不在此贴出了,可以去google,获baidu文库里找

在MAC上安装JAVA开发环境

1. 下载JDK7并安装:
http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

关于JDK里包含的内容,下面这张图很形象
完整阅读

blonde teen swallows load.xxx videos