其实并没有那个复杂。java中对象是什么,你要明白一点就是:

在java中万物皆对象

比如,实体类之间的互相调用,不想访问以及访问其他属性及其方法等。

不论你是线程,还是异步任务,还是。。。都可以用以下的三种通用方法来进行对象间数据的交互。当然android相比java有自己独特的数据交互方式,这些会在后面的文章中讲到,本篇文章意在对java通用的对象间的数据交互进行总结。

一、通过构造函数传递

构造函数很大程度上是方便参数的传递,以达到在新建对象的时候,同时对这个对象的一些属性进行初始化。我们经常需要根据自己的需要,重载类的构造方法。我们可以在对象初建的时候把它需要的数据传递给它,以实现不同对象之间数据的交互。

二、getXXX与setXXX方法

基于java面向对象编程中的封装性和安全性的考虑,我们常将类中的成员变量封装在类内部(即使用private修饰他们),这样就提高了数据的安全性,当我们想要操作这些成员变量怎么办呢?我们可以通过两种方法,第一种即通过public方式的构造器(或称构造函数),也就是方法一讲解的内容,对象一实例化就对该变量赋值。第二种方法就是通过set和get方法。

我们一般在写pojo类的时候,都会给成员变量设置相应的get和set方法。

其实get和set的应用场景不限于此,我们的思维不能被局限。在android中,activity想得到子线程中的handler,我们就可以给子线程写一个getHandler方法,然后在activity中用子线程的对象调用getHander方法,就可以得到子线程的handler了。

还有,listview遇到checkbox,我们会在adapter中建一个map来存储checkbox的状态,在activity中,在全选、取消的按钮监听方法里,我们就需要取到adapter的map,然后更新map。解决方案就是:在adapter中写一个getMap方法。

三、接口回调

通过接口,实体把自己的功能抽象给外界调用。eg:

1、 同一个应用中的前端后端数据交互:

Web中一般常用的内置对象:session、request、application

A、 表单的直接提交,

B、 Js异步提交,通常用Ajax提交实现局部刷新。

2、 不同应用中的应用设备和服务器的数据交互:

A、 Webservice接口调用、数据格式(json)。

3、 Java调用c编写的动态库dll:

JNA调用动态库,c语言写的动态库.dll可以用Java的jna.jar调用。

JNI,c调用Java

学习java,我们要有面向对象的思维去看待问题,这些问题自然而然的及会意了

java 对象的交互_Java中什么是对象的交互?解释一下交互怎么操作?相关推荐

  1. java实例和对象对象的区别_java中实例与对象的区别和联系

    对象是抽象的说法,你可以把它看作一个符合它自身定义的所有实例的代表,而实例则是对象的现实体现. 你可以说一个实例是一个对象,但你不能说一个对象是一个实例.因为定义对象时只是把自身的规则和逻辑定义好,实 ...

  2. java怎么判断对象为空_java中怎么判断对象是否为空

    java中判断对象是否为空的方法: 首先来看一下工具StringUtils的判断方法: 一种是org.apache.commons.lang3包下的:另一种是org.springframework.u ...

  3. java int integer内存_java中一个integer对象的内存占用是多少?可以通过java方法输出吗?...

    今天翻记录看到了自己15年3月份提的问题,现在已经18年6月份了: 去年线上项目出现内存瓶颈,原因是缓存的玩家角色数据过多,在长时间不停服的情况下,导致数据越来越膨胀,之前没有清除无用缓存的机制,并且 ...

  4. java常见检查异常_java中常见异常总汇,附解释

    Java Exception: 1.Error 2.Runtime Exception 运行时异常 3.Exception 4.throw 用户自定义异常 异常类分两大类型:Error类代表了编译和系 ...

  5. java变量存储位置_java 中变量存储位置的区别

    [原文] 1.寄存器:最快的存储区, 由编译器根据需求进行分配,我们在程序中无法控制. 2. 栈:存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆(new 出来的对象)或者常量 ...

  6. java对象类型有哪些_Java中常用的对象数据类型有哪些?它们分别又占多少个字节呢?...

    CSDN上面有关于数据类型的一篇总结详细的文章,顺便复制过来: 在java中常见的数据类型有哪些 ? 内置数据类型类型名称字节.位数最小值最大值默认值例子 byte字节1字节,8位-128(-2^7) ...

  7. java如果把字符串转成对象_Java中的重复对象:不仅仅是字符串

    当Java应用程序消耗大量内存时,它本身就会出现问题,并可能导致GC压力增加和GC暂停时间过长.在我之前的一篇文章中,我讨论了Java中常见的内存浪费源:重复字符串.两个 java.lang.Stri ...

  8. java 组合对象_Java 中组合模型之对象结构模式的详解

    Java 中组合模型之对象结构模式的详解 一.意图 将对象组合成树形结构以表示"部分-整体"的层次结构.Composite使得用户对单个对象和组合对象的使用具有一致性. 二.适用性 ...

  9. java中对象作为参数_java中对象引用,特别作为参数时候注意事项

    1.基础知识 1Byte=8bit Byte和byte一个是对象,一个是基本数据类型而已,都是8bit 2.java中对象引用和值传递: (1).java中若一对象当作参数就是相当于,将变量对应的指向 ...

最新文章

  1. 乌鲁木齐网络赛J题(最小费用最大流模板)
  2. 网络营销——网络营销专员到底是教你如何选择网站页面制作
  3. java手机号归属地查询_【原创】Java实现手机号码归属地查询
  4. DL框架之PyTorch:深度学习框架PyTorch的简介、安装、使用方法之详细攻略
  5. 内置的数据无法实现高性能
  6. 无向图的邻接矩阵存储,4个顶点、4条边
  7. 用python绘制玫瑰花的代码_python也能玩出玫瑰花!程序员的表白代码
  8. 106_Power Pivot之HR入离调转、在职、离职率相关指标
  9. 在二元树中找出和为某一值的所有路径
  10. 不同用户同时并发测压_程序猿学GO:并发
  11. 数据库完整性概念和数据库安全性概念之间的区别与联系
  12. 微信小程序 731 天
  13. asp手机拍照显示_设备 | UNIJET募资约6600万元,用于大尺寸显示领域的新一代喷墨打印技术...
  14. 使用ffmpeg获取影片信息
  15. 电脑桌面云便签如何导入导出便签内容数据?
  16. UCHome二次开发 规范
  17. 气炸了!被交通银行这波操作~
  18. 关于spidev_test自发自收数据不正确的解决方案
  19. Spring框架——IOC、DI
  20. Visual Studio 2013 下载地址 V12各种版本官方下载网址

热门文章

  1. C++基础15-类和对象之多态
  2. php小程序onload,微信小程序 loading 组件实例详解
  3. Pytest标记用例失败之xfail
  4. 20172332 2017-2018-2 《程序设计与数据结构》第七周学习总结
  5. C#如何Json转字符串;字符串转Json;Newtonsoft.Json(Json.Net)
  6. vue中使用导出表格功能
  7. 暑假集训-个人赛第六场
  8. 借个iPad玩玩,越狱4.2.1成功
  9. .net cf的label问题
  10. 矩形波如何傅立叶展开_金科文化会不会连续拉板?两位同学展开激辩