1.面向对象

1.1 构造方法概述和格式

  • 1:构造方法概述和作用

    创建对象,给对象中的成员进行初始化

  • 2:构造方法格式特点

    a:方法名与类名相同
    b:没有返回值类型,连void都没有
    c:没有具体的返回值

1 public class Student {
2     private String name;
3     private int age;
4     //我们自定义的类,默认存在一个空参构造构造方法
5     //构造方法的语法:方法名跟类名相同,没有返回值,连void 也没有
6     public Student(){
7         System.out.println("空参的构造方法调用了");
8     }
9 }

1.2构造方法的重载和注意事项:

  • 1:构造方法的重载
1 public class Teacher {
 2     private String name;
 3     private int age;
 4     public Teacher(){
 5         System.out.println("空参构造调用了");
 6     }
 7     //构造方法的重载
 8     public Teacher(String name) {
 9         System.out.println("一个参数的构造调用了"+name);
10     }
11     public Teacher(String name,int age) {
12         System.out.println("两个参数的构造调用了" + name+"==="+age);
13     }
14 }
  • 2:构造方法注意事项

    a:如果我们没有给出构造方法,系统将自动提供一个无参构造方法。

    b:如果我们给出了构造方法,系统将不再提供默认的无参构造方法。
    注意:这个时候,如果我们还想使用无参构造方法,就必须自己给出。建议永远自己给出无参构造方法

  • 3:给成员变量赋值的两种方式
    a:setXxx()方法
    b:构造方法
1 public class MyTest {
2     public static void main(String[] args) {
3         //使用有参构造方法给成员变量赋值
4         Teacher teacher1 = new Teacher("zhansan");
5         Teacher teacher2 = new Teacher("wangwu", 25);
6         //使用set方法给成员变量赋值
7         teacher1.setName("lisi")
8     }
9 }

1.3 创建一个对象的步骤

  • 1:步骤

    (1):加载Student.class文件进内存
    (2):在栈内存为s开辟空间
    (3):在堆内存为学生对象开辟空间
    (4):对学生对象的成员变量进行默认初始化
    (5):对学生对象的成员变量进行显示初始化
    (6):通过构造方法对学生对象的成员变量赋值
    (7):学生对象初始化完毕,把对象地址赋值给s变量

  • 2:创建对象图示

面向对象的架构模式 面向对象的构造方法_面向对象的架构模式

 

1.4 static关键字的特点及注意事项

  • 1:static关键字的特点

    a:随着类的加载而加载
    b:优先于对象存在
    c:被类的所有对象共享
    d:可以通过类名调用
    其实它本身也可以通过对象名调用。
    推荐使用类名调用。
    静态修饰的内容一般我们称其为:与类相关的,类成员