类、对象、属性、方法、构造方法
Java是面向对象的语言,学习Java本质也是学习各种类。
1.Java的类和对象
类:相当于一个模板,它描述一类对象的行为和状态。
对象:对象是类型的实例化,有状态和行为。
例如1:定义一个动物类,而每个动物比如猫、狗为一个具体的对象,每个对象有一些具体的属性,比如颜色,大小等,然后对应一些行为方法,比如狗叫,睡觉,跑等等
例如2:定义一个Person类,每个人为Person类的一个具体的对象,有一些基本的属性,比如姓名,民族,年龄等,有一些行为方法,比如工作,跑步等等。
例如3:一个汽车类Car,每辆车为具体的对象,有各种属性,比如车颜色,车的品牌等。
类可以看成是创建Java对象的模板,比如我们定义Person类。

根据上图,我们可以来定义下这个类:
public class Person { String name; int age; String nation; void study(){ } void run(){ } }
上述例子中,name, age, nation为Person类的属性,study和run为方法。
那么,我们用引用这个类的时候,就需要把这个类实例化,用new来表示,比如
Person person = new Person();
person就是Person类的实例化对象,这样就可以调用类中的属性和方法了
person.name = "小明";
person.study();
一个类可以包含以下类型变量:
- 局部变量:在方法、构造方法或者语句块中定义的变量被称为局部变量。变量声明和初始化都是在方法中,方法结束后,变量就会自动销毁。
- 成员变量:成员变量是定义在类中,方法体之外的变量。这种变量在创建对象的时候实例化。成员变量可以被类中方法、构造方法和特定类的语句块访问。
- 类变量:类变量也声明在类中,方法体之外,但必须声明为 static 类型。
一个类可以拥有多个方法,在上面的例子中:study()、run() 都是 Person 类的方法。
2.构造方法
Java每个类都有构造方法,构造方法的名字必须和所在类的名字一致,没有返回值,但不能声明void,访问权限可以为任意,但是一般情况下使用public方法权限
如果没有显式地为类定义构造方法,Java 编译器将会为该类提供一个默认构造方法。
如上述Person类例子中,程序会默认创建一个无参的构造方法,我们可以打开编译Person.class文件,就可以看到这个默认的构造方法了
public class Person { String name; int age; String nation; public Person() { } void study() { } void run() { } }
程序中的public Person() { }为默认创建的无参构造方法,创建构造方法的时候需要注意,方法名称必须跟类名一样,并且构造器没有返回参数。
当然,也可以创建有参构造方法,比如:
public Person(String name, int age, String nation){ this.name = name; this.age = age; this.nation = nation; }
this关键字指的就是本类。
构造器的用途:一般来说是进行初始化。在运行时刻,可以通过调用方法或执行某些动作来确定初始值
需要注意的是:
1)构造器必须与主类同名
2)构造器可以有参数
3)构造器可以重载
4)没有返回值
5)不添加构造器编译器生成默认构造器
6)一个类可以有多个构造器

浙公网安备 33010602011771号