通过在优锐课的ange交流下,掌握了很多编程思想方法 特来分享

对象具有状态和行为

Java中的对象以及其他任何``面向对象''语言都是所有Java应用程序的基本组成部分,代表了你可能在你周围找到的任何现实对象:苹果,猫,汽车或人类。

对象始终具有的两个特征是状态和行为。 考虑一个人对象。 它的状态可能包括头发的颜色,性别,身高和体重,还包括愤怒,沮丧或爱的感觉。 它的行为可能包括散步,睡觉,做饭,工作或其他任何人可能做的事情。

对象构成任何面向对象编程语言的核心。

什么是面向对象编程?

已经写了数百本书来描述面向对象编程的复杂性,但是基本上,OOP基于强调重用和继承的整体方法,从而缩短了开发时间。更传统的过程语言,例如Fortran,COBOL和C,采用自上而下的方法,将任务或问题分解为逻辑,有序的一系列功能。

例如,考虑一个银行使用的简单的ATM应用程序。在编写任何代码之前,Java开发人员将首先创建路线图或计划如何进行的,通常从需要创建的所有对象及其交互方式的列表开始。开发人员可以使用类图来阐明对象之间的关系。在ATM交易中需要使用的对象可能是货币,卡,余额,收据,取款,存款等。这些对象需要共同努力才能完成交易:进行存款应产生余额报告,例如收据。对象将在它们之间传递消息以完成任务。

对象和类

对象是类的实例:这是面向对象编程的关键和重用的思想。 在对象可以存在之前,必须存在一个可以作为对象基础的类。

也许我们想要一本书的对象:确切地说,我们想要这本书《银河旅行者指南》。 我们首先需要创建一个类Book。 此类可能是世界上任何书籍的基础。

它可能看起来像这样:

 public class Book {
String title;
String author; //methods
public String getTitle(
{
return title;
}
public void setTitle()
{
return title;
}
public int getAuthor()
{
return author;
} public int setAuthor()
{
return author;
}
// etc.
}

Book类具有标题,其作者具有允许你设置或获取这些项之一的方法(它也将具有更多元素,但此示例仅为摘录)。 但这还不是对象-Java应用程序无法对其执行任何操作。 需要实例化它才能成为可以使用的对象。

创建一个对象

对象与类之间的关系使得可以使用一个类创建许多对象。 每个对象都有自己的数据,但是其基础结构(即其存储的数据类型和行为)由该类定义。

我们可以从一本书类中创建几个对象。 每个对象都称为该类的一个实例。

图书HitchHiker =新书(“银河系HitchHiker指南”,“道格拉斯·亚当斯”(Douglas Adams));

Book ShortHistory =新书(“几乎所有内容的简短历史”,“ Bill Bryson”);

图书IceStation =新书(“ Ice Station Zebra”,“ Alistair MacLean”);

现在可以使用这三个对象:可以读取,购买,借用或共享它们。

  • > 喜欢这篇文章的可以点个赞,欢迎大家留言评论,记得关注我,每天持续更新技术干货、职场趣事、海量面试资料等等
  • > 如果你对java技术很感兴趣也可以交流学习,共同学习进步。
  • > 不要再用"没有时间“来掩饰自己思想上的懒惰!趁年轻,使劲拼,给未来的自己一个交代
  • 文章写道这里,欢迎完善交流。最后奉上近期整理出来的一套完整的java架构思维导图,分享给大家对照知识点参考学习。有更多JVM、Mysql、Tomcat、Spring Boot、Spring Cloud、Zookeeper、Kafka、RabbitMQ、RockerMQ、Redis、ELK、Git等Java干货

Java对象构成所有Java应用程序的基础的更多相关文章

  1. 201771010113 李婷华 《面向java对象程序设计(Java)》第四章学习总结

    一. 理论知识部分 第四章 对象与类 本章主要讲述面向对象程序设计.如何创建标准Java类库中的类对象.如何编写自己的类. 1.面向对象程序设计的几个主要概念: 抽象数据类型.类和对象.封装.类层次( ...

  2. Spring: 读取 .properties 文件地址,json转java对象,el使用java类方法相关 (十三)

    1. 在Java中获取 .properties 文件的路径 (src/main/resources 下) ProjectName |---src/main/java |---src/main/reso ...

  3. 20155305 2016-2017-2 《Java程序设计》实验四 Android程序开发基础

    实验四 Android开发基础 实验内容 基于Android Studio开发简单的Android应用并部署测试; 了解Android.组件.布局管理器的使用: 掌握Android中事件处理机制 实验 ...

  4. JSON-lib框架,JAVA对象与JSON、XML之间的相互转换

    Json-lib可以将Java对象转成json格式的字符串,也可以将Java对象转换成xml格式的文档,同样可以将json字符串转换成Java对象或是将xml字符串转换成Java对象. 一. 准备工作 ...

  5. jackson java对象和json对象的互相转换

    概述 Jackson框架是基于Java平台的一套数据处理工具,被称为“最好的Java Json解析器”. Jackson框架包含了3个核心库:streaming,databind,annotation ...

  6. Java 对象 引用,equal == string

    以前确实一直没注意这个概念,这次看了帖子才知道. 转载于:https://zwmf.iteye.com/blog/1738574 Java对象及其引用 关于对象与引用之间的一些基本概念. 初学Java ...

  7. Java-Runoob:Java 对象和类

    ylbtech-Java-Runoob:Java 对象和类 1.返回顶部 1. Java 对象和类 Java作为一种面向对象语言.支持以下基本概念: 多态 继承 封装 抽象 类 对象 实例 方法 重载 ...

  8. Android Studio NDK 新手教程(5)--Java对象的传递与改动

    概述 本文主要Java与C++之间的对象传递与取值.包括传递Java对象.返回Java对象.改动Java对象.以及性能对照. 通过JNIEnv完毕数据转换 Java对象是存在于JVM虚拟机中的,而C+ ...

  9. 一个 Java 对象到底有多大?

    阅读本文大概需要 2.8 分钟. 出处:http://u6.gg/swLPg 编写 Java 代码的时候,大多数情况下,我们很少关注一个 Java 对象究竟有多大(占据多少内存),更多的是关注业务与逻 ...

随机推荐

  1. ArcGIS Server 地图服务,查询出错 Error performing query operation

    Error: Error performing query operation Error Message Querying a layer from a Map Service that retur ...

  2. 极其实用的JS单行代码

    个人博客 地址:https://www.wenhaofan.com/a/20190629211647 1.强制布尔值 要将变量强制转换为布尔值而不更改其值: const myBoolean = !!  ...

  3. Python 教你 4 行代码开发新闻网站通用爬虫

    \ ​ GNE(GeneralNewsExtractor)是一个通用新闻网站正文抽取模块,输入一篇新闻网页的 HTML, 输出正文内容.标题.作者.发布时间.正文中的图片地址和正文所在的标签源代码.G ...

  4. centos-python3.5安装

    python版本:Python-3.5.5.tgz tar -xvf Python-3.5.5.tgz cp Python-3.5.5 /usr/local cd /usr/local/Python- ...

  5. 【spring】(填坑)sql注入攻击 - 持久层参数化

    结果   填坑失败,并没有看懂是如何检测sql攻击的. 只能说的是: 建议都使用参数化传递sql语句参数.(所以,用hibernate.mybatis等框架的真不用太担心sql攻击问题.) 前言 本文 ...

  6. 树莓派3b 换国内源 更新源

    在国内要更新源的时候,因为是国外的源,总会出现网速太慢的问题, 以下是对于安装了,2017-11-29-raspbian-stretch 系统源 更换最好用root登陆操作 sudo passwd r ...

  7. ansi sql 语法 切换为 oracle 语法

        语句粘贴到 工作表 打开查询构建器 勾选 创建oracle连接 over     sql dev 的语法设置调整,否则表别名会右对齐   下面是 转换后的结果,是不是看得舒服多了

  8. ZedGraph怎样在双击图形后添加箭头标记

    场景 在ZedGraph的曲线图上,双击图时会在图形上生成箭头符号标记. 效果 注: 博客主页: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 霸道的 ...

  9. 2019-08-21 纪中NOIP模拟A组

    T1 [JZOJ6315] 数字 题目描述

  10. 多线程的sleep、yield、join用法及sleep与wait的区别

    Thread类的方法列表:sleep.yield.join用于线程的协作,围绕线程的调度 1.join()等待线程结束:调用join方法的线程,执行结束后才会释放锁.主线程main中调用启动线程(调用 ...