第五课

第五天总结

面向对象的思想

  1. 面向对象思想特点
    1:可以将复杂的事情简单化
    2:将我们从执行者变成了指挥者
    角色发生了转换
  2. 面向对象特征
    封装(encapsulation)
    继承(inheritance)
    多态(polymorphism).

类与对象及其应用

  1. 类:是一组相关的属性和行为的集合
  2. 对象:是该类事物的具体体现
  3. 定义类其实就是定义类的成员(成员变量和成员方法)
    1:成员变量 和以前定义变量是一样的,只不过位置发生了改变。在类中,方法外。
    2:成员方法 和以前定义方法是一样的,只不过把static去掉

成员变量和局部变量的区别

  1. 在类中的位置不同
    成员变量:在类中方法外面
    局部变量:在方法或者代码块中,或者方法的声明上(即在参数列表中)
  2. 在内存中的位置不同,可以看看Java程序内存的简单分析
    成员变量:在堆中(方法区中的静态区)
    局部变量:在栈中
  3. 生命周期不同
    成员变量:随着对象的创建而存在,随着对象的消失而消失
    局部变量:随着方法的调用或者代码块的执行而存在,随着方法的调用完毕或者代码块的执行完毕而消失
  4. 初始值
    成员变量:有默认初始值
    局部变量:没有默认初始值,使用之前需要赋值,否则编译器会报错(The local variable xxx may not have been initialized)

匿名对象

  1. 什么是匿名对象
    就是没有名字的对象
  2. 匿名对象应用场景
    1:调用方法,仅仅只调用一次的时候。
    2:匿名对象可以作为实际参数传递

封装(private)

  1. 封装概述
    是指隐藏对象的属性和实现细节,仅对外提供公共访问方式。
  2. 封装好处
    隐藏实现细节,提供公共的访问方式
    提高了代码的复用性
    提高安全性。
  3. 封装原则
    将不需要对外提供的内容都隐藏起来。
    把属性隐藏,提供公共方法对其访问。

this关键字

  1. this关键字特点
    是当前类的对象引用。
    简单说,它就代表当前类的一个对象。谁调用这个方法,那么该方法的内部的this就代表谁
  2. this的应用场景
    解决局部变量隐藏成员变量

构造方法

  1. 构造方法概述和作用
    创建对象,给对象中的成员进行初始化
  2. 构造方法格式特点
    1:方法名与类名相同
    2:没有返回值类型,连void都没有
    3:没有具体的返回值
  3. 构造方法注意事项
    a:如果我们没有给出构造方法,系统将自动提供一个无参构造方法。
    b:如果我们给出了构造方法,系统将不再提供默认的无参构造方法。

对象的创建步骤

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

发布了43 篇原创文章 · 获赞 7 · 访问量 1787

猜你喜欢

转载自blog.csdn.net/y18791050779/article/details/102467273