动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ Java教程 ]的信息

本月文章推荐
.用Java实现Web服务器.
.垃圾!.
.编写自己的writeObject()和readO.
.在无线J2ME设备上实现超文本传输.
.扩展 Hibernate 对各类数据源支持.
.J2ME Mobile 3D入门教程系列文章.
.JBoss 4.0 简化了中间.
.main成员函数.
.运用Jakarta Struts的七大实战心.
.传输文本.
.CLASSPATH详解.
.[JAVA100例]067、线程优先级.
.什么是Servlet以及Servlet的优越.
.setUTCMinutes 方法.
.JBuilder2005单元测试之捆绑多个.
.巧用GC.
.Java媒体架构基础:Framework Bas.
.Java语言编程中更新XML文档的常用.
.浅论Java访问COM/ActiveX.
.Java项目资源布局方案.

JAVA程序员必读:基础篇(1.a)面向对象编程概念

发表日期:2008-1-5 |



  假如你以前从来没有使用面向对象语言,你需要在开始编写Java代码之前先理解这个概念。你需要理解什么是对象、什么是类、对象和类的关系怎样以及使用消息怎样在对象之间进行通讯。本教程的前面部分将描述面向对象编程的概念,而后面的教程将教你怎样将这个概念编成代码。
  2.1什么是对象
  对象是一些相关的变量和方法的软件集。软件对象经常用于模拟现实世界中我们身边的一些对象。对象是理解面向对象技术的要害。你在学习之前可以看看现实生活中的对象,比如狗、桌子、电视、自行车等等。你可以发现现实世界中的对象有两个共同特征:它们都有状态和行为。比如狗有自己的状态(比如名字、颜色、生育以及饥饿等等)和行为(比如摇尾巴等等)。同样自行车也有自己的状态(比如当前档位、两个轮子等等)和行为(比如刹车、加速、减速以及改变档位等等)。
  而软件对象实际上是现实世界对象的造型,因为它同样有状态和行为。一个软件对象利用一个或者多个变量来维持它的状态。变量是由用户标识符来命名的数据项。软件对象用它的方法来执行它的行为。方法是跟对象有关联的函数(子程序)。
  你可以利用软件对象来代表现实世界中的对象。你可能想用一个动画程序来代表现实世界中的狗,或者用可以控制电子自行车的程序来代表现实世界的自行车。同样你可以使用软件对象来造型抽象的概念,比如,事件是一个用在GUI窗口系统的公共对象,它可以代表用户按下鼠标按钮或者键盘上的按键的反应。
  如图1是一个软件对象的公共可视代表。
   JAVA程序员必读:基础篇(1.a)面向对象编程概念(图一)
  软件对象的状态和行为都可以用在对象中的变量和方法来表达。构造现实世界的自行车的软件对象要有指示自行车的当前状态的变量:速度为20mph,它的当前档位为第三档。这些变量就是我们熟知的实例变量,因为它们包含了用于非凡自行车对象的状态,并且在面向对象技术中,非凡的对象称为实例。
  如图2所示,是作为软件对象的自行车造型。
   JAVA程序员必读:基础篇(1.a)面向对象编程概念(图二)
  2.1什么是对象
  除了变量,软件自行车同样有用于刹车、改变踏板步调以及改变档位的方法。这些方法就是熟知的实例方法因为它们检查或者改变非凡自行车实例的状态。
  以上的对象图显示了对象的变量组成了圆心部分。方法处在变量的四面并且在程序中从其它对象隐藏了对象的核心。用保护方法的方法来包装对象的变量称为封装。这个对象图就是对象理想的表示法,也是面向对象系统设计者努力的最后目标。然而这并不是全部的内容。通常,出于某种现实的理由,对象可能暴露它的一些变量或者隐藏一些方法。在JAVA编程语言中,一个对象可以为变量和方法指定四种访问等级中的一种。这个访问等级决定哪个对象和类可以访问变量或者方法。在JAVA中访问变量和方法可以转换为控制访问类的成员函数。封装相关的变量和方法到一个简洁的软件集是一个简单而且强有力的方法,它为软件开发者提供了两个主要好处:
  模块性:对象的源代码可以独立于其它的对象源代码来进行编写和维护。同样,对象可以很轻易地在系统中传递。你可以将你的自行车对象给其它的对象,它仍然可以正常工作。
  信息隐藏:一个对象假如有一个公共的界面,那么其它的对象就可以与之进行通讯。这个对象可以维护私人的信息和方法,它可以在任何时候被改变而不影响依耐于它的其它对象。所以你不必理解自行车中齿轮的机理就可以使用它。
  2.2什么是消息
  软件对象之间进行交互作用和通讯是利用消息的。
  单一的一个对象通常不是很有用的。相反,一个对象通常是一个包含了许多其它对象的更大的程序或者应用程序。通过这些对象的交互作用,程序员可以获得高阶的功能以及更为复杂的行为。你的自行车假如不使用它的时候,它就是一堆铝合金和橡胶,它没有任何的活动。而只有当有其它的对象来和它交互的时候才是有用的。
  软件对象与其它对象进行交互与通讯是利用发送给其它对象来实现的。当对象A想对象B来执行一个B中的方法,对象A就会消息给对象B。如图3所示。
   JAVA程序员必读:基础篇(1.a)面向对象编程概念(图三)
  有时候,接收的对象需要更多的信息就至于它可以正确知道该如何做。比如,当你想改变自行车的齿轮,你就必须指出哪个齿轮。这个信息是将信息作为参数来传递的。如图4所示的现实了一个信息由三个组件组成:
  被寻址消息的对象(YourBicycle)
  要执行方法的名字(changeGears)
  这个方法需要的所有参数(lowerGear)
   JAVA程序员必读:基础篇(1.a)面向对象编程概念(图四)
  上面的三个组件对于接收方的对象执行相应的方法是给出了充分的信息。再也不需要其它的信息或者上下文了。
  消息提供了两个重要的好处:
  对象的行为是通过它的方法来表达的,因此消息传递支持所有在对象之间的可能的交互。
  对象不需要在相同的进程或者相同的机器上来发送和接收消息给其它的对象
  2.3什么是类
  类实际上是对某种类型的对象定义变量和方法的原型。
  在现实世界中,你经常看到相同类型的许多对象。比如 ,你的自行车只是现实世界中许多自行车的其中一辆。使用面向对象技术,我们可以说你的自行车是自行车对象类的一个实例。通常,自行车有一些状态(当前档位、两个轮子等等)以及行为(改变档位、刹车等等)。但是,每辆自行车的状态都是独立的并且跟其它自行车不同。
上一篇:Java面向对象编程实例详解 人气:1050
下一篇:面向对象编程之:Java collection更有效管理elements 人气:493
浏览全部Java的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-12-3 MyBB v1.4.4 简体中文版 bulid 0
2008-12-3 MyBB v1.4.4 繁体中文版 bulid 0
2008-12-3 新普网络商城XpShop.net v6.6
2008-12-3 闪睿企业网站管理系统 2009 Buil
2008-12-3 动易SiteFactory v2.0 正式版
2008-12-3 秀影电影程序VodCMS v6.0.0
2008-12-3 pageadmin企业网站管理系统 v2.1
2008-12-3 麦布自动链 v1.1
2008-12-3 小计天空儿精美企业全站 v1.1
2008-11-29 Tencent Traveler 4.4
2008-11-29 龙卷风网络收音机 v3.0.0.0
2008-11-29 Intel Chipset Software Install
2008-11-29 TweakVI 1.0 Build 1100
2008-11-29 Opera 9.62 Build 10469
2008-11-29 MPlayer WW编译版 SVN-r28044(20
2008-11-29 NetTools网络工具v1.0.0破解版
2008-11-29 3DGallery三维体验1.1破解版
2008-11-29 SecretBook保密本v1.0破解版
  发表评论
姓 名: 验证码:
内 容:
站长工具:网站收录查询 | Google PR查询 | ALEXA排名查询 | CSS在线编辑器 | OPEN参数生成器 | 弹出式窗口代码产生器 | 密码登录生成器 | 在线按钮生成器 | Meta标签生成器 | 多色彩特效字代码生成器 | 网页代码调试器 | 在线FTP登陆 | Flash取色器 | 配色代码对照表 | 配色辞典 | CSS生成器 | 广告代码 | 框架网页代码生成器 | js/vbs加密 | md5加密 | 进制转换 | UTF-8 转换工具 | 在线调色板 | Html转换js | Html转换asp | Html转换php | Html转换perl
实用工具:汉字翻译拼音 | 拼音字典 | 符号对照表 | 个税计算 | 实时汇率查询换算 | 经典小工具 | 汉字简繁转换 | 普通单位换算 | 公制单位换算 | 生辰老黄历 | 国内电话区号 | 国家代码与域名缩写 | 文字加密解密 | 元素周期表 | 健康查询 | 世界时间 | 万年历 | 二十四节气 | 汉字横竖排版 | 手机号码查询 | 计算器 | ip搜索
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2009 www.knowsky.com All rights reserved | 沪ICP备05001343号
ホームページ制作 不動産検索システム 求人情報
防水工事·改修工事 フットサル大会 探偵
SEO対策 中国語教室 ホームページ作成