面向对象
如何定义一个类?
定义类的过程,就是把一系列相关事物共同的属性和行为抽取出来的过程 事物的属性,在类中叫成员变量 事物的行为,在类中叫成员方法
如何创建一个对象?
类名 对象名 = new 类名();
如何使用一个对象?
对象名.变量名
对象名.方法名(…)
成员变量和局部变量的区别
当方法中定义和类的属性名相同的变量,如何调用呢?
定义位置
成员变量:类中,方法外
局部变量:方法中,或形式参数
初始化值
成员变量:有默认初始化值
局部变量:无默认初始化值,必须先赋值再使用
作用范围
成员变量:在类中
局部变量:在方法中
内存中的位置
成员变量:堆内存
局部变量:栈内存
生命周期
成员变量:随着对象的创建而存在,随着对象的消失而消失
局部变量:随着方法的调用而存在,随着方法调用完毕而消失
注意事项
局部变量和成员变量重名时,采用就近原则
Student.java
package cn.itcast.demo2;
/*
定义一个学生类
*/
public class Student {
//成员变量
//姓名
String name; //成员变量
//年龄
int age;
//成员方法
//学习
public void study() {
//局部变量
//String name = "小黑";
System.out.println(name + "正在学习...");
}
}
TestStudent.java
package cn.itcast.demo2;
/*
学生类的测试类
局部位置:
方法的参数列表 或者 方法体语句(方法内部)
成员位置:
类中, 方法外.
Java中使用变量的规则:
使用变量遵循"就近原则", 如果局部位置有, 就使用.
没有就去本类的成员位置找, 有就使用. 没有就报错.(先这么记忆, 不严谨)
*/
public class TestStudent {
//main方法是程序的主入口, 所有的代码都是从这里开始执行的.
public static void main(String[] args) {
//1. 创建学生类的对象.
Student s = new Student();
//2. 给成员变量赋值, 并打印结果.
s.name = "张三丰";
s.age = 141;
System.out.println(s.name);
System.out.println(s.age);
System.out.println("--------------");
//3. 调用成员方法.
s.study();
}
}