一丶面向对象思想概述
当需求单一,或者简单时,我们一步一步去操作没问题,并且效率也挺高。可随着需求的更改,功能的增多,发现需要面对每一个步骤很麻烦了。这时就开始思索,能不能把这些步骤和功能在进行封装,封装时根据不同的功能,进行不同的封装,功能类似的封装在一起。这样结构就清晰了很多。用的时候,找到对应的类就可以了。这就是面向对象的思想。
- 文件名问题
在一个java文件中写两个类:一个基本的类,一个测试类。
建议:文件名称和测试类名称一致。 - 如何使用呢?
创建对象使用。 - 如何创建对象呢?
格式:类名 对象名 = new 类名(); - 如何使用成员变量呢?
格式:对象名.变量名 - 如何使用成员方法呢?
格式:对象名.方法名(…)
二丶成员变量和局部变量的区别
- 在类中的位置不同
成员变量:在类中方法外
局部变量:在方法定义中或者方法声明上(形参) - 在内存中的位置不同
成员变量:在堆内存
局部变量:在栈内存 - 生命周期不同
成员变量:随着对象的创建而存在,随着对象的消失而消失
局部变量:随着方法的调用而存在,随着方法的调用完毕而消失 - 初始化值不同
成员变量:有默认初始化值
局部变量:没有默认初始化值,必须定义,赋值,然后才能使用。 - 注意事项:: 局部变量名称可以和成员变量名称一样,在方法中使用的时候,采用的是就近原则。
三丶面向对象的具体实例
我们新建一个学生类并对该对象设置成员变量通过测试类调用
- 代码实现
public static void main(String[] args) {
Stedent stedent = new Stedent();
int age=stedent.age;
String name=stedent.name;
System.out.println(name);
System.out.println(age);
int calc=stedent.clac(5,10);
}
public class Stedent {
String name;
int age;
public int clac(int a,int b){
return a+b;
}
}
运行结果:
结论:
我们在没有给成员变量赋值时,成员变量会有默认值。