Java编程那些事儿60——对象

对象(Object)是面向对象技术的核心,按照面向对象的思考方式,现实中的每个实体都是一个对象,比如一个人、数据库中的一张表等,总结起来,就是面向对象技术中的经典语句——万事万物皆对象。

8.3.1 什么是对象?

其实面向对象技术只是提供了一种思考的方式,其思考方式就是把一个复杂的结构看成是一个整体,这样可以降低认知的复杂性。比如认识一个电脑,按照面向对象的认知方式,就是先把电脑分成一个个的对象:显示器对象、硬盘对象、CPU对象等等,然后再一个一个的进行认知。

同时面向对象技术也是一种设计方式,其设计方式是把一个负责的模块划分为一个个小的模块分开进行设计,这样可以降低设计的复杂性。比如设计一个电脑,按照面向对象的设计方式,就是把电脑分成一个个的对象:显示器对象、硬盘对象、CPU对象等等,然后再一个一个的进行设计。

正因为面向对象无论在认知和设计方面都降低了复杂性,所以在程序设计语言中得到了广泛的应用。其实也就是是对现实已存在的内容的升华,所以面向对象存在于生活的很多方面,并不是计算机程序设计领域里的“阳春白雪”。

在语法角度来看,对象就是一个变量,只是该变量比较复杂,其内部既包含属性(数据),也包含方法(功能)。在Java语言中,把复合数据类型(包括数组、类和接口)的变量都称作对象。所以对象的概念相对来说,就显得跟具体了。

每个对象中存储类中对应属性的数值,或者从数据角度来理解对象的话,也可以把对象看作是类似C语言中结构体变量类似的结构。

下面来介绍一下Java语言中对象相关的语法。

8.3.2 对象的语法

对象相关的语法主要包含四个部分:对象的声明、对象的初始化、引用对象中的属性和引用对象中的方法。

例如,有如下一个类的代码:

public class Box{
 /**长度*/
 int length;
 /**宽度*/
 int width;
 /**高度*/
 int height;
 public Box(){
  length = 10;
  width = 10;
  height = 10;
 }
 public Box(int l,int w,int h){
  length = l;
  width = w;
  height = h;
 }
 /**求体积的方法*/
 public int volume(){
  return length * width * height;
 }
}

时间: 2024-09-15 13:09:29

Java编程那些事儿60——对象的相关文章

Java编程那些事儿52—方法声明

第七章 方法 方法(method),在面向过程的语言中称作函数(function),在汇编语言中称作子程序,是一个代码功能块,实现某个特定的功能.在实际的程序开发中,方法是一种基础的组织代码的方式.本部分就介绍方法相关的概念.相关语法以及实际使用时需要注意的问题. 7.1 方法概述 方法的概念来源于数学上的函数,在数学中,当数据具有一定的规律时,就是用一个函数来代码该数字的规律,例如f(n)=n则代表1.2.3.--这样的一个数列.在数学上n是参数,对于确定的n值只有一个f(n)的值和它对应.

Java编程那些事儿25—位运算符

4.5 二进制运算符 由于计算机内部的数据都以二进制的形式存在,所以在Java语言中提供了直接操作二进制的运算符,这就是下面要讲解的位运算符和移位运算符. 使用二进制的运算符,可以直接在二进制的基础上对数字进行操作,执行的效率比一般的数学运算符高的多,该类运算符大量适用于网络编程.硬件编程等领域. 二进制运算符在数学上的意义比较有限. 在Java代码中,直接书写和输出的数值默认是十进制,Java代码中无法直接书写二进制数值,但是可以书写八进制和十六进制数字,八进制以数字0开头,例如016,十六进

Java编程那些事儿3——你适合学习程序设计吗?

 Java编程那些事儿3--你适合学习程序设计吗?作者:陈跃峰出自:http://blog.111cn.net/mailbomb          程序设计是一个技术活,所以不是适合所有的人.现在很多人听说程序设计人员待遇如何如何的好,都一窝蜂的来学习程序,其实这个现象很不正常,因为程序不一定适合你.其实对于一个人来说,适合你的才是最好的.         就像现在很多小孩子都被家长逼着去学钢琴啊什么,有些小孩根本没有艺术细胞的,所以学习的效果就是差强人意了.         其实程序设计最需要

Java编程那些事儿4——如何学好程序设计?

  Java编程那些事儿4--如何学好程序设计?作者:陈跃峰出自:http://blog.111cn.net/mailbomb          俗话说"兴趣是最好的老师",但是只靠兴趣是远远不够的,还需要付出艰辛的努力.程序设计是一种技能,需要在较短的时间内学会,就不能像学习汉语一样,通过十几年甚至更长的时间来学好,也不能像英语那样进行业余学习,以至很多大学毕业的人英语水平也不敢恭维,也达不到实用的程度.         那么如何学好程序设计呢?或者更现实一点,如何在短时间内成为一个

Java编程那些事儿1——序言

 序言          从大学毕业到现在,马上就六年了,这六年中从事过开发,也从事培训工作,相比而言,参加培训工作的时间要长一些.由于工作的特点,遇到了各种各样的学生,在学习编程时遇到了一系列的问题,也有很多迷茫的时候,希望通过编写本书,把相关的问题进行一下总结,把自己的经验和大家进行分享.当然由于一些知识也只是个人见解,也希望大家积极指正,帮助编程的初学者,以及程序开发人员深刻理解基础的概念,更好的学习编程和从事开发工作.         编写一本书,总要有个名字吧,姑且把书名叫做<Java

Java编程那些事儿103——网络编程技术2

13.2.3 TCP编程 按照前面的介绍,网络通讯的方式有TCP和UDP两种,其中TCP方式的网络通讯是指在通讯的过程中保持连接,有点类似于打电话,只需要拨打一次号码(建立一次网络连接),就可以多次通话(多次传输数据).这样方式在实际的网络编程中,由于传输可靠,类似于打电话,如果甲给乙打电话,乙说没有听清楚让甲重复一遍,直到乙听清楚为止,实际的网络传输也是这样,如果发送的一方发送的数据接收方觉得有问题,则网络底层会自动要求发送方重发,直到接收方收到为止. 在Java语言中,对于TCP方式的网络编

Java编程那些事儿98——多线程问题及处理1

12.4 多线程问题及处理 多线程编程为程序开发带来了很多的方便,但是也带来了一些问题,这些问题是在程序开发过程中必须进行处理的问题. 这些问题的核心是,如果多个线程同时访问一个资源,例如变量.文件等,时如何保证访问安全的问题.在多线程编程中,这种会被多个线程同时访问的资源叫做临界资源. 下面通过一个简单的示例,演示多个线程访问临界资源时产生的问题.在该示例中,启动了两个线程类DataThread的对象,该线程每隔200毫秒输出一次变量n的值,并将n的值减少1.变量n的值存储在模拟临界资源的Da

Java编程那些事儿96——多线程使用示例1

12.3 多线程使用示例 多线程技术对于初学者来说,是编程思维的一种跳跃,在实际学习时,一定要熟悉线程的基础知识,掌握线程的实现方式,然后就是开始大量的进行实践,从实践中领悟线程编程的奥妙以及实现的原理. 下面通过几个常见的例子演示多线程的基本使用. 12.3.1 定时炸弹 定时炸弹是在电影中常见的一种装置,在该部分就使用多线程技术模拟该功能.实现的功能为:在程序启动以后进行倒计时,当60秒以后程序结束,在程序运行时可以在控制台输入quit控制线程(炸弹)的暂停. 在该示例程序中,开启了一个系统

Java编程那些事儿94——多线程实现方式1

12.2 多线程实现方式 线程的概念虽然比较复杂,但是在Java语言中实现线程却比较简单,只需要按照Java语言中对于线程的规定进行编程即可. 在实现线程编程时,首先需要让一个类具备多线程的能力,继承Thread类或实现Runnable接口的类具备多线程的能力,然后创建线程对象,调用对应的启动线程方法开始执行即可实现多线程编程. 在一个程序中可以实现多个线程,多线程编程指在同一个程序中启动了两个或两个以上的编程形式.当启动的线程数量比较多时,对于系统资源的要求比较多,所以程序支持的最大线程数量和