对象的接口

Simula(模拟) 是一个很好的列子。正如这个名字锁暗示的,它的作用是"模拟"像"银行出纳员"我们有一系列出纳员,客户,账户以及交易等

每类成员(元素)都有具有一些通用的特征,每个账号都有一定的余额;每个出纳都能接收客户的存款,等等。与此同时,每个成员都有自己的状态

每个都有自己的状态;每个账号都有不同的余额;每名出纳都有一个名字。所以在计算机程序中,能用独一无二的实体分别出纳员,客户,账户,

交易。这个实体便是"对象",而且每个对象都隶属一个特定的"类"。 

在面向对象的程序中,尽管我们真正要做的是新建各种各样的数据,"类型"(Type),但几乎所有面向对象的程序设计语言采用了"class"关键字。当您看到

"Type" 这个字的时候,请同时想到"class";反之亦然

建好一个类后可根据情况生成许多对象。随后,可将那些对象作为要解决问题中存在的元素处理。事实上,当我们进行面向对象的程序设计时。面临

的最大一项挑战就是:如何在"问题空间"(问题实际存在的地方)的元素与"方案空间"(对实际问题进行建模的地方)的元素之间建立理想的"一对一"对象

如何利用对象完成真正有用的工作,必须有一种办法能向对象发出请求,令其做一些实际的事情,比如完成一次交易,在屏幕上画一些东西或者打开一个开关等等。每个对象仅能接受特定的请求。

 

2.方案的重复作用

为重复使用一个类。最简单的办法是仅直接使用那个类的对象。但同时也能将那个类的一个对象置入一个新类。我们把这叫做“

创建一个成员对象 ”新类可由任意数量和类型的其他对象构成。无论如何,只要新类达到了设计要求即可。这个概念叫做"组织"

--在现有类的基础上组织一个新类,有时,我们也将组织称作"包含"关系,比如"一辆车包含了一个变速箱"对象的组织具有极大的

灵活性。新类的"成员对象"通常设为"私有"使用这个类的客户程序员不能访问,这样一来,我们可在不干扰客户代码的前提下,从容修改那些

成员,也可以在"运行期"更改成员,增大了灵活性。

 

转载于:https://www.cnblogs.com/xuxuanxubao/p/4902739.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/272825.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java color类 蓝色_java中Color类的简单总结

标签:java中Color类的简单总结1.颜色的常识任何颜色都是由三原色组成(RGB),JAVA中支持224为彩色,即红绿蓝分量取值介于0-255之间(8位表示)2.Color类中的常量public final static Color black new Color(0,0,0);public final static Color bule new Col…

C#中几种循环语法的比较

循环操作在程序开发当中使用非常的广泛,当然循环也很容易成为整个程序运行的性能瓶颈,所以理解C#中几种循环的用法,还是非常重要的。C#支持一下四种循环方式1、while循环2、do...while循环3、for 循环4、foreach循环前三种循环在C、Java中也是…

Eclipse基金会

昨天Eclipse基金会庆祝其成立十周年。2004年2月的新闻稿宣布该非盈利组织的正式成立,由包括开发者、消费者和插件提供商在内的各独立团体组成的董事会,为Eclipse的长期发展负责。 基金会成立时,有19个项目和50个董事会成员,其开源…

.Net架构必备工具列表

原文N多年前微软官网曾发了.Net下必备的十种工具,N多年过去了,世异时移,很多东西都已经变化了,那个列表也似乎陈旧了。而且,该文也只是对十种工具独立的介绍,显得有些罗列的感觉,是不是每个工具…

java scanner接收数组_java – 使用scanner将文件中的整数读入数组

我正在为学校做一份复习工作.赋值是编写一个类,它从标准输入读取一个包含几个整数的文件,这些整数将被放入一个数组中.从这里开始,需要编写方法来找出平均值,中位数,最大值,最小值和标准差.它读起来像这样:4556677889等等…所以,我假设我需要创建一个数组列表(因为长…

Asp.Net页面传值的方法简单总结【原创】

1、QueryString当页面上form按照get的方式向页面发送请求数据的时候,web server会将请求数据放入一个QEURY_STRING的环境变量中,然后通过QeueryString方法从这个变量中获取相应的参数。例如:发送参数页面Test1.aspx 按钮单击代码:…

关于archlinux下的ralink5370网卡

驱动此网卡要使用 rt2800usb,rt2800lib 这两个模块 顺便说一下对模块进行操作的命令: rmmod 模块名 //为移除模块 insmod 模块所在路径 //为添加模块 查看网卡是否能被驱动,可以使用命令:ifconfig -a 转载于:https://www.cnblogs.…

java xml 递归_Java递归遍历XML所有元素

import org.dom4j.Document;import org.dom4j.DocumentHelper;import org.dom4j.DocumentException;import org.dom4j.Element;import java.util.*;/*** Created by IntelliJ IDEA.* User: leizhimin* Date: 2008-4-14 14:02:12* Note: Java递归遍历XML所有元素*/public class …

【基础】C#异常处理的总结

一、异常处理的理解?异常处理是指程序在运行过程中,发生错误会导致程序退出,这种错误,就叫做异常。因此处理这种错误,就称为异常处理。二、异常处理如何操作?C# 异常处理时建立在四个关键词之上的&#xff…

Java Web 路径问题

可能在做文件上传或者 图片加载,资源加载 时候用到文件相对服务器地址 System.out.println(request.getRemoteUser()); //客户端用户System.out.println(request.getRemoteAddr()); //客户端IPSystem.out.println(request.getRemoteHost()); //客户端主机名Syst…

mysql 多字节编码漏洞_phpmyadmin 4.8.1 远程文件包含漏洞(CVE-2018-12613)

漏洞详情范围 phpMyAdmin 4.8.0和4.8.1原理 首先在index.php 50-63行代码$target_blacklist array (import.php, export.php);// If we have a valid target, lets load that script insteadif (! empty($_REQUEST[target])&& is_string($_REQUEST[target])&&…

.Net开发的两个小技巧

一、符号的妙用1、可以作为保留关键字的标识符C#规范当中,不允许使用保留关键字(class、bool等)当作普通的标识符来命名,这时候符号作用就体现出来了,可以通过符号前缀把这些保留关键字可以当作普通的字符使用。比如&a…

Codeforces Round #FF (Div. 1) A. DZY Loves Sequences

原题链接:http://codeforces.com/problemset/problem/446/A 题意:给一个长度为n的序列,最多可以修改一个位置的数,求最长连续上升子序列。 题解:当a[i1] > a[i-1]2的时候,可以通过改变a[i]的值来使前后两…

25句张小娴经典爱情语录,句句穿心!

1、女人在床上流的眼泪,比在任何一个地方多。男人在床上说的谎话,也比在任何一个地方多。2、承诺本来就是男人与女人的一场角力,有时皆大欢喜,大部份的情况却两败俱伤。3、爱情正是一个将一对陌生人变成情侣,又将一对情…

mysql 数据库事务处理_Mysql事务处理问题 - mysql数据库栏目 - 自学php

今天和同学讨论起数据库事务处理的问题,感觉讨论中明白了一些,有些知识看过了,但是没有实际使用还是不理解。事务处理就是将一系列操作当做一个原子操作,要么全部执行成功,如果执行失败则保留执行期的状态。通过提交和…

[LeetCode] Palindrome Linked List

Given a singly linked list, determine if it is a palindrome. 一开始想用栈,但是试来试去发现写不出来遂放弃,后来想想再不济可以转换成数组然后分别两头扫,但是这样就用了O(n) 的空间,再进一步,可不可以在链表里模…

【原创】Ajax的用法总结

一、什么是AjaxAjax英文全称为“ Asynchr JavsScript and XML”(异步的JavaScript和XML),是一种创建交互式网页的开发技术。二、Ajax技术的核心Ajax是一系列相关技术的融合,其核心包括XMLHttpRequest、JavsScript和DOM技术&#x…

gprs java_WISMO模块GPRS上网设置的过程

WISMO模块GPRS上网设置的过程一) AT指令设置部分(1) ATCGCLASS“B”置为“网络WISMO模块GPRS上网设置的过程一) AT指令设置部分(1) ATCGCLASS“B”置为“B”模式。(2) ATCGDCONT1,“IP”,“CMNET”设置APN。(3) ATCSQ 检查信号 若返回10—31&#xff0c…

loadrunner性能测试步骤

性能测试过程分为4个阶段:设计、构建、执行、分析/诊断/调节具体的工作流程如下图 设计  >  构建  >  执行   >  分析/诊断/调节 收集要求    设置测试环境 基准测试    诊断瓶颈 设计测试策略  记录测试脚本 性能测试     调…

Asp.Net生命周期的详解

一.Asp.Net页面生命周期的概念当我们在浏览器地址栏中输入网址,回车查看页面时,这时会向服务器端IIS)发送一个request请求,服务器就会判断发送过来的请求页面,当完全识别 TTP页面处理程序类后,A…