类: 具有相同特性和行为的对象的抽象就是类
- 行为就是类中定义的方法
- 相同的特性就是类中定义的属性(也就是变量) , 用来描述类的特性
- 例如:人类这个概念就是类 , 吃饭睡觉等行为就是方法 , 身高体重等特性就是属性
对象: 对象就是类中的一个实例
- 例如: 你这个人就是人类中的一个对象
类和对象的定义和使用:
public class Person {
private Double weight;
private Integer height;
void eat() {
System.out.println("我在吃饭");
}
public staticvoidmain(String[] args) {
Person person = new Person();
person.weight=140.5;
person.height=180;
person.eat();
}
}
运行结果:
我在吃饭
运行分析:
定义一个类 , 需要使用class关键字
Person person =newPerson();先声明person对象, 然后用new 关键字进行实例化
2. 对象内存分析
3. 构造方法: 和类名称一样 , 没有任何返回值 , 在使用new关键字初始化对象的时候调用
1. 一个类至少有一个构造方法
2. 如果一个类没有构造方法,则会默认生成一个无参构造方法, 例如上面的Person类, 我们没有写构造方法
3. 如果我们写了构造方法,则会使用我们自己的构造方法
public class Person {
privateDoubleweight;
private Integer height;
public Person(Double weight,Integer height) {
this.weight= weight;
this.height= height;
}
publicDoublegetWeight() {
returnweight;
}
public voidsetWeight(Double weight) {
this.weight= weight;
}
publicIntegergetHeight() {
returnheight;
}
public voidsetHeight(Integer height) {
this.height= height;
}
voideat() {
System.out.println("我在吃饭");
}
public staticvoidmain(String[] args) {
Person person = new Person();
person.weight=140.5;
person.height=180;
person.eat();
}
}
此时, Person person = newPerson();编译报错, 因为没有无参构造方法
4. 属性和成员变量:
成员变量又称为字段或者属性, 一般定义在类的最外层, 成员变量包括静态变量(类变量)和常量
- 静态变量:用static修饰的成员变量
- 常量:用static和final修饰的成员变量