201711671129《Java程序设计》第4、5周学习总结

教材学习内容总结

 第4章  类与对象

4.1编程语言的发展阶段

面向机器—>面向过程—>面向对象(封装性、继承、多态)

4.2类

类的定义包含两个部分:类声明类体

4.2.1类的声明

类的名字要符合标识符规定

类命名遵守下列编程风格:

(1)如果类名使用拉丁字母,那么名字的首字母使用大写字母,如Hello、Time等。

(2)类名最好容易识别、见名知意。当类名由几个“单词”复合而成时,每个单词的首字母应大写,如ChinaMade

4.2.2 类体

类声明之后的一对大括号 “{ }” 以及它们之间的内容称作类体,大括号之间的内容称作类体的内容。

类体的内容由如下所述的两部分构成:

(1)变量的声明:用来存储属性的值(体现对象的 属性)。

(2)方法的定义:方法可以对类中声明的变量进行操作,即给出算法(体现对象所具有的 行为)。

4.2.3 成员变量

声明变量部分所声明的变量被称为 成员变量 域变量

1、成员变量的类型:成员变量的类型可以是Java中的任何一种数据类型,包括基本类型:整型、浮点型、字符型、逻辑类型;引用类型:数组、对象和接口。

2、成员变量的有效范围:在整个类内都有效,其有效性与它在类体中书写的先后位置无关。(习惯先介绍属性再介绍行为)

3、编程风格:(1)一行只声明一个变量。(2)变量的名字除了符合标识符规定外,名字的首单词的首字母使用小写,如果变量的名字由多个单词组成,从第2个单词开始的其他单词的首字母使用大写。(3)变量名字见名知意。

4.2.4 方法

方法的定义包括两部分:方法头方法体

方法头:由方法的类型、名称和名称之后的一对小括号以及其中的参数列表所构成。(参数可有可无)

(void不需要返回数据)

方法体:方法声明之后的一对大括号{、}以及它们之间的内容称为方法的方法体。方法体的内容包括局部变量的声明和Java语句,即在方法体内可以对成员变量和方法体中声明的局部变量进行操作。

局部变量:在方法体中声明的变量和方法的参数被称作局部变量,和类的成员变量不同的是,局部变量只在方法内有效,而且与其声明的位置有关。方法的参数在整个方法内有效,方法内的局部变量从声明它的位置之后开始有效。

区分成员变量和局部变量:如果局部变量的名字与成员变量的名字相同,那么成员变量被隐藏,即该成员变量在这个方法内暂时失效。(如果想在该方法中使用被隐藏的成员变量,必须使用关键字 this

局部变量没有默认值:成员变量有默认值,但局部变量没有默认值,因此在使用局部变量之前,必须保证局部变量有具体的值。

4.2.5 需要注意的问题:对成员变量的操作只能放在方法中,方法使用各种语句对成员变量和方法体中声明的局部变量进行操作,声明成员变量时可赋予初值

4.2.6类的UML图

UML图属于结构图,常被用于描述一个系统的静态结构。

4.3 构造方法与对象的创建

构造方法:是类中的一种特殊方法,当程序用类创建对象时需使用它的构造方法类中的构造方法的名字必须与它所在的类的名字完全相同,而且没有类型。允许一个类中有多个构造方法,但必须保证其参数不同(参数不同指:参数个数不同 或 个数相同但类型不完全相同)

注意:如果类中没有编写构造方法,系统会默认该类只有一个构造方法,该默认的构造方法是无参数的,且方法体中没有语句

a默认构造方法与自定义构造方法:如果类里定义了一个或多个构造方法,那么Java不提供默认的构造方法。

b构造方法没有类型

创建对象:创建一个对象包括对象的声明为对象分配变量

对象的声明:  类的名字 对象名字;如:Lader lader;

分配变量:使用new运算符类的构造方法为声明的对象分配变量,即创建对象

使用对象

对象操作自己的变量(体现对象的属性)

对象通过使用点运算符“.”(点运算符也称引用运算符或访问运算符)访问自己的变量,访问格式为: 对象.变量;

对象调用类中的方法(体现对象的行为)

对象可以使用点运算符“.”调用创建它的类中的方法,从而产生一定的行为(功能),调用格式为: 对象.方法

4.7实例成员与类成员

1不同对象的实例变量互不相同

2所有对象共享类变量

3通过类名直接访问类变量

加关键字static的叫做类变量/类方法(皆为静态)

4.8方法重载

方法重载的意思是:一个类可以有多个方法具有相同名字,但这些方法的参数必须不同(参数个数不同;或,参数个数相同,但参数表中的某个参数的类型不同)

多态:一个出现多种状态          重载:继承后发生一些变化

4.9 this关键字

this表示某个对象,不能出现于类方法中

实例方法只能通过对象来调用,不能用类名来调用。this代表正在调用该方法的当前对象。

当实例成员变量的名字与局部变量的相同时,成员变量前面的“this.”或“类名.”就不可以省略。

4.10 包

包是用来区分同名类的。

4.11 import语句

import语句用来引入类库和自定义包中的类

4.12 访问权限

private私有,public公有,protected保护,friend友好,内容与C和C++基本一致。

4.14 对象数组

定义:Student [ ] stu;

          stu = new Student[10];

表示数组stu有10个元素,并且都是Student类的对象,但现在还只是空对象,在使用前应当创建数组所包含的对象:

如:stu[0] = new Student();

教材学习中的问题和解决过程

 

代码调试中的问题和解决过程

 

其他(感悟、思考等,可选)

 变量的首字母需小写;构造方法是没有类型的;

学习进度条

 

参考资料

·Java学习笔记

·Java学习笔记(第8版)》学习指导

猜你喜欢

转载自blog.csdn.net/zggdpn/article/details/83350492