Java中的类

  1.类的概念

  2.类中的封装

  3.对象的三大特征

  4.对象状态

  5.类与类之间的关系

------------------------------------------------------------

  1.类(class)是构造对象的模板或蓝图。由类构造(construct)对象的过程称为创建类的实例(instance)。
  个人理解:
    Java中存着很多很多的类:
      有些是Java标准类库中提供的类
      有些是用户自己编写的类
      有些是第三方提供的类
      ....
    总之有很多的类,我们可以用这些类来创建各种不同的实例,这些实例之间相互关联,这样就构成了JAVA世界。

    也可以这样理解:Java世界中存在着各种各样的类,我们程序员可以利用这些各种各样的类来创建各种各样的实例,让这些实例相互关联 就形成了一个丰富的Java世界。
    所以,作为程序员的我们需要实现某个系统时,就是去Java世界中寻找符合我们系统功能的类,然后创建这些类对应的实例,如果没有现成的类来使用的话,就需要我们自己去编写类了。
  2.封装(encapsulation) 是对象中一个重要的概念,封装是将数据和行为组合在一起,并对对象的使用者隐藏了数据的实现方式。

  对象中的数据称为实例域(instance field),操作数据的过程称为方法(method)
  可以这样理解封装:比如现实生活中的汽车,我们驾驶员在驾驶汽车时需要操作的有:方向盘、油门、变速器、离合等等,如果把汽车也看做是 实例的话,那么"汽车实例"就将汽车的基本信息进行了封装,只是对驾驶员提供了操作它的方法。
  3.对象的三个特征
    1. 对象的行为(behavior) ---> 可以对对象施加哪些操作?
    2. 对象的状态(state) ---> 当施加那些操作时,对象如何响应?
    3. 对象的标识(identity) ---> 如何辨别具有相同行为与状态的不同对象?
  4.对象的状态: 一个类可以创建出N个对象来,每个对象都保存着描述当前特征的消息。对象的状态可能会随着时间而发生改变,但这种改变不会是自发的,对象状态的改变需要通过调用方法实现。(如果不经过调用方法就可以改变对象的状态,只能说明封装性遭到了破坏。)
  5.类与类之间的关系
    在类之间,最常见的关系有:
      依赖("uses-a")
      聚合("has-a")
      继承("is-a")
    "依赖"(dependence),即"uses-a"关系,是一种最明显的、最常见的关系,如果一个类的方法操作另一个类的对象,我们就说一个类依赖于另一个类。(应该尽最可能地将相互依赖的类减少至最少,这样使类之间的耦合度最小)
    "聚合"(aggregation),即"has-a"关系,一个对象包含另外一些对象的关系。
    "继承(inheritance)",即"is-a"关系,一个类从另外一个类继承而来的关系。

基础知识(05) -- Java中的类的更多相关文章

  1. Java基础知识(JAVA中String、StringBuffer、StringBuilder类的区别)

    java中String.StringBuffer.StringBuilder是编程中经常使用的字符串类,他们之间的区别也是经常在面试中会问到的问题.现在总结一下,看看他们的不同与相同. 1.可变与不可 ...

  2. 【JAVA零基础入门系列】Day11 Java中的类和对象

    今天要说的是Java中两个非常重要的概念--类和对象. 什么是类,什么又是对象呢?类是对特定集合的概括描述,比如,人,这个类,外观特征上,有名字,有年龄,能说话,能吃饭等等,这是我们作为人类的相同特征 ...

  3. 053 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 15 流程控制知识总结

    053 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 15 流程控制知识总结 本文知识点: 流程控制知识总结 流程控制知识总结 选择结构语句 循环结构语句 ...

  4. 细说java中的类

    前言 最近在学习<java编程思想> 学到了内部类 类不就是class吗 天天用 还能讲出花来了不成... 其实不然,在java中,类的种类和使用方式多种多样,花样繁多.其中主要有 普通类 ...

  5. 051 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 13 Eclipse下程序调试——debug入门1

    051 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 13 Eclipse下程序调试--debug入门1 本文知识点: 程序调试--debug入门1 程序 ...

  6. 048 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 10 案例——阶乘的累加和

    048 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 10 案例--阶乘的累加和 本文知识点:通过案例练习嵌套循环应用 案例练习--阶乘的累加和 案例题目 ...

  7. Java开发知识之Java中的Map结构

    Java开发知识之Java中的Map结构 一丶Map接口 Map没有实现Collection接口,提供的是Key 到Value的映射. Map中.不能包含相同的Key,每个Key只能映射一个Value ...

  8. Java开发知识之Java中的集合Set接口以及子类应用

    ---恢复内容开始--- Java开发知识之Java中的集合Set接口以及子类应用 一丶Set接口以及作用 在上一讲.我们熟悉了接口的实现图.以及自己各有的子类. List接口主要存储的数据是可以重复 ...

  9. Java开发知识之Java中的集合上List接口以及子类讲解.

    Java开发知识之Java中的集合类 一丶什么是集合类 如果你学习说数据结构,那么学习集合就很简单. 因为集合就是存储数据的结构. 例如 有链表结构 (list ) 还有 map结构.等等. 集合类就 ...

随机推荐

  1. windows下redis安装

    最近因公司项目原因,去了趟昆明出差,其中第一次接触安装redis,配置sentinel,学习到不少,但也都是皮毛而已,本随笔记下所学知识. 1.首先介绍下redis,来源自百度百科 redis是一个k ...

  2. Spring MVC之@RequestParam @RequestBody @RequestHeader 等详解

    (转自:http://blog.csdn.net/walkerjong/article/details/7946109#) 引言: 接上一篇文章,对@RequestMapping进行地址映射讲解之后, ...

  3. C#基础---Queue(队列)的应用

       Queue队列,特性先进先出. 在一些项目中我们会遇到对一些数据的Check,如果数据不符合条件将会把不通过的信息返回到界面.但是对于有的数据可能会Check很多条件,如果一个数据一旦很多条件不 ...

  4. QC在win7下不能访问QC服务器介绍

    本地访问不了服务器QC的主要几个原因总结 服务器serverjbossextensionhpcmd 2016-03-24   兼容性问题: 1.在服务端QC的安装目录下jboss\server\def ...

  5. AC日记——砍树 codevs 1388

    1388 砍树  时间限制: 1 s  空间限制: 256000 KB  题目等级 : 黄金 Gold 题解  查看运行结果     题目描述 Description 伐木工人米尔科需要砍倒M米长的木 ...

  6. float4与half4数据类型

    连续4个32位float类型数的向量 HLSL数据类型 GPU是以四维向量为基本单位来计算的.4个浮点数所组成的float4向量是GPU内置的最基本类型.使用GPU对两个float4向量进行计算,与C ...

  7. 【51Nod 1244】莫比乌斯函数之和

    http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1244 模板题... 杜教筛和基于质因子分解的筛法都写了一下模板. 杜教筛 ...

  8. CentOS 7.0系统安装配置步骤详解

    CentOS 7.0系统是一个很新的版本哦,很多朋友都不知道CentOS 7.0系统是怎么去安装配置的哦,因为centos7.0与以前版本是有很大的改进哦. 说明: 截止目前CentOS 7.x最新版 ...

  9. PAT 1049. 数列的片段和(20)

    给定一个正数数列,我们可以从中截取任意的连续的几个数,称为片段.例如,给定数列{0.1, 0.2, 0.3, 0.4},我们有(0.1) (0.1, 0.2) (0.1, 0.2, 0.3) (0.1 ...

  10. Linux的Shell

    Shell是命令行解释和执行器,是介于使用者和操作系统内核(Kernel)之间的一个接口: Bash (Bourne Again shell) 是Linux系统下经典的Shell;