栏目分类:
子分类:
返回
文库吧用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
文库吧 > IT > 软件开发 > 后端开发 > Java

面向对象——类与对象

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

面向对象——类与对象

面向对象基本概念

  面向对象是一种新兴的程序设计方法,或者说是一种新的程序设计规范,其基本思想是使用对象、类、继承、封装、消息等基本概念来进行程序设计。它是从现实世界客观存在的事物(即对象)出发来构造软件系统的,并且在系统构造中尽可能运用人类的自然思维方式。

对象:对象是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位。对象由属性和对属性进行操作的一组服务组成。

类:把众多是事物归纳、划分成一些是人类在认识客观世界时经常采用的思维方式。分类的原则是抽象的。类是具有相同属性和服务的一组对象的集合,它为属于该类的所有对象提供了统一的抽象描述,其内部包括属性和服务两个主要部分。在面向对象编程语言中,类是一个独立的程序单位,它应该有一个类名并包括属性说明和服务说明两个主要部分。类与对象的关系就如同模具与铸件的关系,类的实例化的结果是对象,而对一类对象的抽象就是类。

消息:消息就是向对象发出的服务请求,它包括:提供服务的对象标识、服务标识、输入信息、回答信息。服务通常被称为方法或函数。

类与对象

在面向对象中,类和对象是最基本、最重要的组成单元。类实际上是表示一个客观世界某类群体的一些基本特征抽象。

类:描述了一组有相同 属性(特点) 和 方法(行为) 的集合。可以看成一类事物的模板,使用事物的属性特征和行为特征来描述该类事物。

属性:就是该事物的状态信息。

方法:就是该事物能够做什么。

例如,**类:**人类;

属性:名字、性别、体重、身高、年龄;

行为:吃饭、说话、学习;

人类叫张三?人类吃了一碗米饭?“人类”只是一个抽象的概念,它仅仅是一个概念,是不存在的实体!

对象:对象是类的一个实例(对象不是找个女朋友),有状态和行为。例如,一条狗是一个对象,它的状态有:颜色、名字、品种;行为有:摇尾巴、叫、吃等。

类:类是一个模板,它描述一类对象的行为和状态。

现在让我们深入了解什么是对象。看看周围真实的世界,会发现身边有很多对象,车,狗,人等等。所有这些对象都有自己的状态和行为。拿一条狗来举例,它的状态有:名字、品种、颜色,行为有:叫、摇尾巴和跑。对比现实对象和软件对象,它们之间十分相似。软件对象也有状态和行为。软件对象的状态就是属性,行为通过方法体现。在软件开发中,方法操作对象内部状态的改变,对象的相互调用也是通过方法来完成。

类的定义

在 Java 中定义一个类,需要使用 class 关键字、一个自定义的类名和一对表示程序体的大括号。完整语法如下:

[public][abstract|final]class[extends][implements] {

    // 定义属性部分

    ;

    ;

    …

    // 定义方法部分

    function1();

    function2();

    …

}

Java 类名的命名规则:

1.类名应该以下划线(_)或字母开头,最好以字母开头。

2.第一个字母大写,如果类名由多个单词组成,则每个单词的首字母最好都大写。

3.类名不能为 Java 中的关键字,例如 boolean、this、int 等。

4.类名不能包含任何嵌入的空格或点号以及除了下划线(_)和美元符号($)字符之外的特殊字符。

创建一个新的类,就是创建一个新的数据类型。实例化一个类,就是得到类的一个对象。因此,对象就是一组变量和相关方法的集合,其中变量表明对象的状态和属性,方法表明对象所具有的行为。定义一个类的步骤如下所述:

(1) 声明类。编写类的最外层框架,声明一个名称为 Person 的类。

public class Person {    // 类的主体

}

 (2) 编写类的属性。类中的数据和方法统称为类成员。其中,类的属性就是类的数据成员。通过在类的主体中定义变量来描述类所具有的特征(属性),这里声明的变量称为类的成员变量。

成员变量又分为类变量(有static修饰)和实例变量(没有static修饰)

声明成员变量的语法如下:

[public|protected|private][static][final]

1

各参数的含义如下。

public、protected、private:用于表示成员变量的访问权限。(不写就是default)

作用域     当前类     同一包     子孙类     其它包

public        √     √     √     √

protected         √     √     √    

default(friendly)       √     √             

private     √                      

static:表示该成员变量为类变量,也称为静态变量。

Java虚拟机(JVM)只为静态变量分配一次内存,在加载类的过程中完成静态变量的内存分配。由于静态变量属于类(类级别),而不是某个对象所有,因而可以直接通过类名访问这类变量。通过类名.属性的方式访问静态变量。

final:在Java中,final关键字可以用来修饰类、方法和变量(包括成员变量和局部变量)。

final修饰变量时表示将该成员变量声明为常量,其值无法更改(final修饰对象时维护的是其引用地址不变,而不是对象的属性不变)。对于一个final变量,如果是基本数据类型的变量,则其数值一旦在初始化之后便不能更改;如果是引用类型的变量,则在对其初始化之后便不能再让其指向另一个对象,但该引用所指向的对象的内容是可以发生变化的。

type:表示变量的类型。

variable_name:表示变量名称。

可以在声明成员变量的同时对其进行初始化,如果声明成员变量时没有对其初始化,则系统会使用默认值初始化成员变量。

初始化的默认值如下:

数据类型         默认值

byte 0

short         0

int    0

long 0L

float 0.0f

double      0.0

boolean    false

char u0000代表字符为空

引用类型         null

定义类的成员变量的示例如下:

public class Student {   

    public String name;    // 姓名   

    final int sex = 0;    // 性别:0表示女孩,1表示男孩   

    private int age;    // 年龄

}

修饰符:修饰符是可选的,告诉编译器如何调用该方法。定义了该方法的访问类型。

返回值类型 :方法可能会返回值。returnValueType 是方法返回值的数据类型。有些方法执行所需的操作,但没有返回值。在这种情况下,returnValueType 是关键字void。

方法名:是方法的实际名称。方法名和参数表共同构成方法签名。

-参数类型:参数像是一个占位符。当方法被调用时,传递值给参数。这个值被称为实参或变量。参数列表是指方法的参数类型、顺序和参数的个数。参数是可选的,方法可以不包含任何参数。

方法体:方法体包含具体的语句,定义该方法的功能。

转载请注明:文章转载自 www.wk8.com.cn
本文地址:https://www.wk8.com.cn/it/1039606.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 wk8.com.cn

ICP备案号:晋ICP备2021003244-6号