JavaSE总结基础语法之 - 面向对象上

1. 类与对象

1.1面向对象的三条主线

  1. Java类及类成员: 属性、构造器、方法、代码块、内部类
  2. 面向对象的三大特征: 封装、继承、多态(抽象)
  3. 与面向对象相关关键字: this、super、extends、implements、static、final、abstract、interface、package、import

1.2 面向对象与面向过程的理解

面向过程: 强调的是功能行为,以函数为最小单位,考虑怎么做
面向对象: 强调的是具备功能的对象,以类、对象作为最小单位,考虑谁做

1.3 面向对象的两个重要概念

  1. 类: 对一类事物的描述, 是抽象的、概念上的定义
  2. 对象: 是实际上存在的该类事物的每个个体, 因而也称为实例
  3. 面向对象最重要的就是设计类
  4. 设计类, 就是设计类的成员

1.4 二者的关系

对象: 是类 new出来的,是类的派生
类: 是根据一类事物的描述设计出来的

  1. 创建类, 设计类的成员
  2. 创建类的对象
  3. 通过对象调用类的属性、类的方法

1.5 对象的创建与内存解析

在这里插入图片描述

1.6匿名对象的理解

匿名对象: 实际上就是创建类的对象后并没有显示的赋值给一个变量名
特点: 是一次性的,每次创建一个匿名对象就在内存中开辟了一块空间

		new Phone().sendEmail();
		new Phone().playGame();
		new Phone().price = 1999;
		new Phone().showPrice();//0.0

1.7 理解万事万物皆对象

  1. 在Java语言中,我们都将功能封装到类中,通过类创建对象,调用类中的功能。
  2. 涉及到Java语言与前端Html、后端的数据库交互时,前后端的结构在Java层面交互时,都体现为类、对象。

2. 属性

类的设计中,两个重要结构之一: 属性

2.1 属性是什么?

  • 属性的结构拆分: 数据类型、变量名、变量值
  • 属性的数据类型: 基本数据类型、引用数据类型
  • 属性的变量名: 遵守驼峰命名规范、用于给同类型进行赋值、运算
  • 属性的变量值: 填充的变量值要与数据类型相匹配
  • 按定义位置分类: 成员变量、局部变量

2.2 属性 vs 局部变量

  • 相同点:

    • 定义格式: 数据类型 变量名 = 变量值
    • 先声明,后使用
    • 变量都对应其作用域
  • 不同点:

    • 按类中定义的位置不同:
      • 属性: 是在类中的{ }进行定义,作用的范围里自然是在类中都能使用
      • 局部变量: 是在类中的方法的{ }定义的,作用范围之内在方法里
    • 关于权限修饰符的不同:
      • 属性: 能被public、private、缺省、protect进行修饰
      • 局部变量: 不能被权限修饰符进行修饰
    • 默认初始化值的情况:
      • 属性: 定义时可以不用显示初始化值,默认的初始化值为基本数据类型或引用类型的初始化值
      • 局部变量: 没有默认初始化值,意味着我们必须显示的初始化变量
    • 在内存中加载的位置:
      • 属性:加载到堆空间中(非static)
      • 局部变量:加载到栈空间

属性分为: 实例变量、类变量

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值