IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> Java面向对象(上) -> 正文阅读

[Java知识库]Java面向对象(上)

这篇博客概念理论性的东西比较多,希望您可以耐心,细心地看完😊😊😊,相信还是有点帮助的

先来谈谈面向对象的三条主线

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

面向对象和面向过程的区别,简单谈谈

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

面向对象的两个要素:

  • 类:对一类事物的描述,是抽象的,概念上的定义
  • 对象:是实际存在的该类事物的每个个体,因而也成为实例(instance)。面向对象程序设计的重点是类的设计。设计类就是设计类的成员

理解“万事万物皆对象”

  • 在Java语言范畴中,我们都将功能,结构等封装到类中,通过类的实例化来调用具体的功能结构
  • 涉及到Java语言与前端HTML,后端的数据库交互时,前后端的结构在Java层面交互时,都体现为类、属性

属性(成员变量)与局部变量的异同点
补充(初学可能比较容易搞混):属性=成员变量=field=域、字段;方法=成员方法=函数=method
1.相同点:1)定义变量的格式相同;2)先声明后使用;3)都有其对应的作用域
2.不同点:
1)在类中声明的位置不同,属性:直接定义在类的一对{}内。局部变量:声明在方法内,方法形参,代码块内,构造器形参,构造器内部的变量
2)关于权限修饰符的不同,属性:可以在声明属性时,使用权限修饰符指明其权限。局部变量:不可以使用权限修饰符
3)默认初始化值得情况,属性:类的属性根据其类型都有默认初始值。局部变量:没有默认初始值,意味着我们在调用局部变量之前,一定要显示赋值
4)在内存中加载的位置不同,属性:加载到堆空间中(非static)。局部变量:加载到栈中
补充一下类的属性根据其类型的默认初始值,整型—0,浮点型—0.0,字符型—0(不是数字,对应的ASCII码值是32,即空格)或者’\u0000’,布尔型—false,引用类型(类、数组、接口、String)—null(空值,没有赋值的意思)

匿名对象的使用

  • 理解:我们创建的对象,没有显示地赋给一个变量名,即为匿名对象
  • 特征:只能调用一次

方法的重载
在同一个类中,允许存在一个以上的同名方法,只要它们的参数个数或者参数类型不同即可

可变个数形参要注意的几个点(JDK5.0新特性)

  • 格式:数据类型…变量名
  • 当调用可变个数参数的方法时,传入的参数个数可以为0个,1个,2个…
  • 可变个数形参的方法与本类中方法名相同,形参不同的方法之间构成重载
  • 可变个数形参的方法与本类中方法名相同,形参类型也相同的数组之间不构成重载(二者不能共存)
  • 可变个数形参在方法的形参中,必须声明在末尾,且最多只能声明一个可变形参

面向对象特征之一:封装与隐藏
高内聚,低耦合:前者指类的内部数据操作自己完成,不允许外部干涉。后者指仅对外暴露少量的方法用于使用。也就是说,隐藏对象内部的复杂性,只对外公开简单的接口,便于外界调用,从而提高系统的可扩展性,可维护性,通俗地说,该隐藏的隐藏起来,该暴露的暴露出来

封装性的体现

  • 我们将类的属性私有化,同时提供公共的方法来获取和设置此属性的值
  • 不对外暴露私有方法
  • 单例模式(后面再了解)…

构造器(或构造方法)
作用:创建对象和初始化对象的信息
说明:

  • 如果没有显示的定义类的构造器,则系统默认提供一个空参的构造器
  • 定义构造器的格式:权限修饰符 类名(形参列表){ }
  • 一个类中定义多个构造器,彼此构成重载
  • 一旦定义了类的构造器,系统不再提供默认的空参构造器

关键字this的使用

  • this可以用来修饰属性,方法,构造器
  • thisi修饰属性,方法,this理解为当前对象或当前正在创建的对象
  • this调用构造器

this调用构造器规则较多,总结一下:

  • 我们在类的构造器中,可以显示地使用“this(形参列表)”方法来调用本类中指定的其它构造器
  • 构造器中不能通过“this(形参列表)”方式调用自己
  • 如果一个类中有n个构造器则最大有n-1个构造器中使用了“this(形参列表)”
  • “this(形参列表)”必须声明在当前构造器的首行
  • 构造器内部,最多只能声明一个“this(形参列表)”,用来调用其它构造器

大家还是要自己敲代码练习哈,尤其是构造器这个点。博主写的代码有点多,就没有放上来了

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2021-07-28 07:36:16  更:2021-07-28 07:38:13 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/9 4:07:38-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码