①概念:
类(Class)就像是一个设计图,是模板,定义好类,我们可以根据类这个模板创造对象(Object),即对象是类的一个具体实例(Instance),有状态和行为。
②定义:
用关键词class。比如定义一个衣服类:class Clothes;
③组成:
类拥有自己的成员,包含变量和方法。
变量:第一类是数据成员,成员变量;第二类是局部变量,方法体内的变量;第三类是静态变量,全局变量static。
方法:方法就是行为,一个类可以有多个方法。逻辑运算、数据修改以及所有动作都是在方法中完成的。
class Clothes{
String color;
char size;
}
④构造方法:
概念:对新创建的对象进行初始化。
特点:
(1)构造方法的方法名必须与类名相同。
(2)构造方法没有返回类型,也不能定义为void,在方法名前面不声明方法类型。
(3)构造方法的主要作用是完成对象的初始化工作,它能够把定义对象时的参数传给对象的域。
(4)构造方法不能由编程人员调用,而要系统调用。
(5)一个类可以定义多个构造方法,如果在定义类时没有定义构造方法,则编译系统会自动插入一个无参数的默认构造器,这个构造器不执行任何代码。
(6)构造方法可以重载(overload),以参数的个数,类型,或排列顺序区分。(重载见方法那一节)
this关键字第3种用法(见对象一节):在构造函数区块中用this(参数)可以调用自身已定义的其他参数的构造器
public class A{
public A(int a){
}
public A(){
this(1);//这里调用自身的构造函数public A(int a){
}
}
⑤对象初始区块:
在创建对象之后,调用构造函数之前,如果有需要运行的代码区块,可以用{}定义。一般写在类定义的最前面。
完整的类结构:
1、定义类
2、静态(类)初始区块
2、对象初始区块
3、定义变量
4、构造函数
5、方法
public class Puppy{
{
//对象初始区块,在构造函数之前
}
String a; // 数据成员、成员变量、实例变量
Puppy(){ // 无参构造函数
}
Puppy(String name){ // 这个构造器仅有一个参数:name
// 方法体
}
}