目录
1、类的定义:
是某些具备某些共同特征的实体的集合;
(1)它是一种抽象的数据类型;
(2)它是对所具有相同特征实体的抽象,在面向对象的程序设计语言中,类是对一类“事物”的属性与行为的抽象;
(3)类可以理解为一个模板,它描述一类对象的行为和状态;
例:例如一本书就可以看成一个类,那么书这个类包含了标题、标价、作者等这些属性;
(4)类的三大部件:构造器、成员变量、方法;
2、对象的定义:
是通过java类所创建出来的实体;
(1) Java类实际是一个抽象意义上的概念,对象就是通过这个java类的抽象概念具体化之后的一个具体概念;
例:盖楼房的图纸就是Java类,根据这个图纸修建起来的能够被看见,被使用的这个实际存在的楼房,就是相当于是用过这个图纸得到的对象;
(2)对象的组成:(对象同时具有属性和方法两项特性);
①不同的对象拥有不同的特征和行为;
②对象的特征和行为分别称为对象的属性和方法;
注:在分析对象的特征和行为时,需要根据不同的应用场景,有选择地分析较重要的特征和行为;
3、类和对象的关系
(1)java类是构造对象的模板;
(2)对象是这个模板的具体实现;
(3)定义类就是通过抽取同类对象的共性而自定义的一种数据类型;
(4)总结:类是对象的类型(模板),对象是类的实例;
4、如何定义类
(1)所有Java程序都以类class为组织单元;
(2)关键字class定义自定义的数据类型;
public class 类名{
//定义属性部分
属性1的类型 属性1;
属性2的类型 属性2;
……
属性3的类型 属性3;
//定义方法部分
方法1( );
方法2( );
……
方法n( );
}
(3)类名规范:
①不能使用关键字;
②不能包含任何空格或点号“. ”,及除下划线“_”、字符“$”外的特殊字符;
③不能以数字开头;
④首字母大写;
⑤类名应该简洁而有意义,尽量使用完整单词;
(4)定义一个类的步骤:
①定义类的框架;
②编写类的属性;
③编写类的方法;
(5)声明方法:
①驼峰命名法:用于定义属性、方法名,第一个单词的首字母小写,后面每个单词的首字母大写,例:getName、tailLength等;
②帕斯卡命名法:用于定义类名,每一个单词的首字母都大写,例:类名Monkey等;
访问修饰符 返回值类型 方法名(){
//方法体
}
//例:
public static void main(String[] args){
System.out.println("Hello World!!!");
}
5、创建并使用对象
(1)语法:类名 对象名 = new 类名();
//例:
Monkey george= new Monkey ();
(2)语法:对象名.属性 //引用对象的属性;
对象名.方法名() //引用对象的方法;
//例:
george.name = "乔治"; //给name属性赋值
george.jump(); //调用jump()方法
(3)注意:
①对象属性在未赋值之前使用默认值;
数据类型 | 默认值 |
int | 0 |
double | 0.0 |
char | '\u0000' |
boolean | false |
String | null |
②类名和对象名不能混淆:
一个类可以创建多个该类的对象,但是对象名不能相同;
6、面向对象的优势
(1)与人类的思维习惯一致;
(2)信息隐藏,提高了程序的可维护性和安全性;
(3)提高了程序的可重用性、可扩展性;