一、采用面向对象的方式开发一个软件,生命周期之中:

(1)面向对象的分析:OOA

(2)面向对象的设计:OOD

(3)面向对象的编程:OOP

二、类

定义:类在现实世界世界之中是不存在的,是一个模板,是一个概念,是人类大脑思考抽象的结果;类表示一类事物;在现实世界之中,对象A与对象B之间具有共同特征,进行抽象总结出一个模板,这个模板就称为类。

三、对象

定义:对象是实际存在的个体,现时世界中是实际存在的。

四、描述一个软件开发的过程

(1)先观察现实世界,从现实世界中寻找对象

(2)寻找N多个对象之后,发现所有的对象都有共同特征

(3)形成一个模板(也就是类)

(4)通过代码来表述一个类

(5)程序中有了类的概念

(6)通过类就可以创建对象了

(7)有了对象之后,可以让对象直接协作起来形成一个系统

五、 关系

类--实例化--对象

对象又被称为实例(instance)

对象--抽象--类

六、重点

(1)类描述的是对象的共同特征

(2)共同特征如:身高特征

(3)这个身高特征在访问的时候,必须先创建对象,通过对象去访问这个特征,因为这个特征具体的某个对象之后,值不同,有的对象身高1.80,有的身高2.20

(4)一个类主要描述什么信息

状态+动作

状态信息:名称、身高、性别、年龄

动作信息:吃喝、唱歌、跳舞

状态是一个类的属性

动作是一个类的方法

注意:状态和动作当具体到某个对象上之后,发现最终的结果可能不一样

对象和对象之间有共同特征,但是具体到对象之后有数据的差异。

(5)格式

类{

  属性;//描述对象的状态信息

  方法;//描述对象的动作信息

}

(6)类的定义(从这里开始编写代码)

语法结构:

[修饰符列表] clasd 类名{

 }

例子:

学生类,描述所有学生对象都存在的共同特征

学号、名字、性别、年龄、住址

学生对象都有的动作信息:

吃饭、睡觉、学习、唱歌、跳舞

重点:属性通常都是采用一个变量的形式来描述的

public class D31_Student {

  //属性(描述对象的状态信息),属性通常采用变量的方法来定义在类体之中,方法体之外的变量为成员变量

  //成员变量没有初始化值的话,那么系统默认值会向0看齐

  int no;//学号

  String name;//姓名

  boolean sex;//性别

  int age;//年龄

  String address;//地址

  //方法是描述对象的动作信息,当前例子就不描述方法了,只描述信息属性

}

(7)java语言中类是一种引用数据类型

七、源码:

D32_student.java

地址:

https://github.com/ruigege66/Java/blob/master/D32_student.java​

2.CSDN:https://blog.csdn.net/weixin_44630050(心悦君兮君不知-睿)

3.博客园:https://www.cnblogs.com/ruigege0000/

4.欢迎关注微信公众号:傅里叶变换,个人公众号,仅用于学习交流,后台回复”礼包“,获取大数据学习资料

Java连载32-对象、类及其关系与定义的更多相关文章

  1. Java连载60-类之间的六种关系

    一.类之间的关系 1.泛化关系(UML图:实线空心三角形箭头,箭头指向被继承方) 类和类.接口与接口之间的继承称为泛化关系 public class A {} class B extends A{} ...

  2. Java连载80-数字类格式、随机数、BigDecimal

    一.数字类 1.关于数字格式化:java.text.DecimalFormat; 2.数字格式元素: # 任意数字 , 千分位 . 小数点 0 不够补零 package com.bjpowernode ...

  3. Java连载17-赋值类运算符&字符串的连接运算符

    一.赋值运算符 1.赋值类运算符包括两种: (1)基本赋值运算符:= (2)扩展的赋值运算符: +=     -=    *=    /=    &= 赋值类的运算符优先级:先执行等号右边的表 ...

  4. 3.2 STL中的函数对象类模板

    *: STL中有一些函数对象类模板,如下所示: 1)例如要求两个double类型的x 和y 的积,可以: multiplies<double>()(x,y); 该表达式的值就是x*y的值. ...

  5. Java编程里的类和对象

    像我们搞计算机这块的,都知道这么一件事,当前的计算机编程语言主要分为两大块,一为面向过程,二为面向对象.Java就是一门纯面向对象的语言.学习了一个月左右的Java,在下对于Java当中的类和对象有了 ...

  6. Java学习笔记 04 类和对象

    一.类和对象的概念 类 >>具有相同属性和行为的一类实体 对象 >>实物存在的实体.通常会将对象划分为两个部分,即静态部分和动态部分.静态部分指的是不能动的部分,被称为属性,任 ...

  7. java面向对象编程(类、对象)

    一.面向对象编程概述面向对象编程(Object  Oriented  Programming,缩写为OOP)是当今最流行的程序设计技术,它具有代码易于维护.可扩展性好和代码可常用等优点.面向对象的设计 ...

  8. Java中类与类的关系

    在java中类和类的关系大致分三种:泛化.关联.依赖. 1. 泛化(Generalization) "XX是一个XX"关系(is a),通常使用的关键词为 extends.impl ...

  9. 比较C++、Java、Delphi声明类对象时候的相关语法

    同学们在学习的时候经常会遇到一些问题,C++.Java.Delphi他们到底有什么不一样的呢?今天我们来比较C++.Java.Delphi声明类对象时候的相关语法.希望对大家有帮助! C++中创建对象 ...

随机推荐

  1. vs2013 在按F5调试时,总是提示 “项目已经过期”的解决方案

    这个是由于缺少某些文件(如.h,xxx.icon),或者文件时间不对 引起的. 如图在工具选项设置 最小为 “诊断”. 然后编译一下,会提示 xxx过期,确认下即可.

  2. 记录一次基于docker搭建jira平台

    背景:项目需要选择不同测试平台,筛选一个最佳平台 现状:一台机器安装多套环境,虚拟机太繁琐 解决方案:通过Docker模拟安装测环境 1.pull docker 镜像: jira:7.11.1(目前的 ...

  3. QMS 的趨勢概述

    自泰勒Taylor提出的科学管理被奉行后,制造业的分工已然成形,而产品不再是由工匠单独负责完成.为确保产品的质量,产品在完工后的检验为确保瑕疵品不外流出给客户的必要关卡.然而当产品依靠检验结果并无法减 ...

  4. 纯数据结构Java实现(4/11)(BST)

    个人感觉,BST(二叉查找树)应该是众多常见树的爸爸,而不是弟弟,尽管相比较而言,它比较简单. 二叉树基础 理论定义,代码定义,满,完全等定义 不同于线性结构,树结构用于存储的话,通常操作效率更高.就 ...

  5. POJ 1661 暴力dp

    题意略. 思路: 很有意思的一个题,我采用的是主动更新未知点的方式,也即刷表法来dp. 我们可以把整个路径划分成横向移动和纵向移动,题目一开始就给出了Jimmy的高度,这就是纵向移动的距离. 我们dp ...

  6. API 资源隔离系统设计与实现

    (马蜂窝技术原创内容,公众号 ID:mfwtech) Part 1 背景 大交通业务需要对接机票.火车票.租车.接送机等业务的外部供应链,供应商的数据接口大部分通过 HTTP.HTTPS 等协议进行通 ...

  7. HashMap并发下死循环问题解析

    首先小伙伴要明确:死循环问题在JDK 1.8 之前是存在的,JDK 1.8 通过增加loHead和loTail进行了修复. 在JDK 1.7及之前 HashMap在并发情况下导致循环问题,致使服务器c ...

  8. 云原生生态周报 Vol. 17 | Helm 3 发布首个 beta 版本

    本周作者 | 墨封.衷源.元毅.有济.心水 业界要闻 1. Helm 3 首个 beta 版本 v3.0.0-beta.1 发布 该版本的重点是完成最后的修改和重构,以及移植其他 Helm 2 特性. ...

  9. 从零开始开发IM(即时通讯)服务端

    好消息:IM1.0.0版本已经上线啦,支持特性: 私聊发送文本/文件 已发送/已送达/已读回执 支持使用ldap登录 支持接入外部的登录认证系统 提供客户端jar包,方便客户端开发 github链接: ...

  10. 牛客-长沙理工校赛C-取手机

    传送门:https://www.nowcoder.com/acm/contest/96/C 参考:http://www.cnblogs.com/Dillonh/p/8835074.html 题意: d ...