码出高效_第二章 | 面向对象_上

目录

  • [一. OOP理念](#一. OOP理念)
    • [1. 概念辨析](#1. 概念辨析)
    • [2. 四大特性](#2. 四大特性)
      • [1. 抽象](#1. 抽象)
      • [2. 封装](#2. 封装)
      • [3. 继承](#3. 继承)
      • [4. 多态](#4. 多态)
  • [二. 初识Java](#二. 初识Java)
    • [1. JDK](#1. JDK)
      • [JDK 5-11的重要类、特性及重大改变](#JDK 5-11的重要类、特性及重大改变)
    • [2. JRE](#2. JRE)
  • [三. 类](#三. 类)
    • [1. 概述](#1. 概述)
    • [2. 接口和抽象类](#2. 接口和抽象类)
      • [1. 概念及相同点](#1. 概念及相同点)
      • [2. 不同点](#2. 不同点)
      • [3. 总结](#3. 总结)
    • [3. 内部类](#3. 内部类)
    • [4. 访问权限控制](#4. 访问权限控制)
      • [1. 由来](#1. 由来)
      • [2. public/private/无/private](#2. public/private/无/private)
      • [3. 推荐访问权限处理](#3. 推荐访问权限处理)
    • [5. this 与 super](#5. this 与 super)
    • [6. 类关系](#6. 类关系)
    • [7. 序列化](#7. 序列化)
      • [1. 序列化和反序列化](#1. 序列化和反序列化)
      • [2. 序列化方式](#2. 序列化方式)
  • 总结

一. OOP理念

1. 概念辨析

  • 面向过程编程: 是让计算机有步骤地顺序地做一件事,一种过程化的叙事思维。
    其结构相对松散,更强调如何流程化地解决问题。
  • 面向对象编程: 的思维更加内聚,强调高内聚、低耦合,先抽象模型,定义共性行为再解决实际问题。

2. 四大特性

抽象是所有特性的基础、从封装到继承最后到多态为层层递进。

1. 抽象

2. 封装

3. 继承

4. 多态

二. 初识Java

  • 1995年Sun公司首次发布Java语言。
  • 1996年Java开发工具包(即Java Development Kit 简称 JDKl.O)发布,这是 Java 发展的一个重要里程碑,标志着 Java 成为一门独立的 熟语言。
  • 随后Sun发布了Just in time 编译器(简称 JIT),不断进步的 JIT 技术使 Java 的执行速度接近甚至超过其他高级语言。
  • Java 语言拥有跨平台、分布式、多线程、健壮性等主要特点,是当下比较主流的高级编程语言。

1. JDK

最具划时代影响力的版本是JDK5 ,项目代号Tiger,成为工业级语言,在企业服务端得到极为广泛的应用。

JDK 5-11的重要类、特性及重大改变

2. JRE

JRE( Java Runtime Environment )即Java运行环境,包括 JVM、核心类库、核心配置工具等。

关于JVM

三. 类

1. 概述

2. 接口和抽象类

1. 概念及相同点

2. 不同点


3. 总结

3. 内部类

4. 访问权限控制

1. 由来

面向对象的核心思想之一就是封装 ,只把有限的方法和成员公开给别人,这也是迪米特法则的内在要求,使外部调用方对方法体内的实现细节知道得尽可能少

2. public/private/无/private


3. 推荐访问权限处理

5. this 与 super

6. 类关系


7. 序列化

1. 序列化和反序列化

内存中的数据对象只有转换为二进制流才可以进行数据持久化和网络传输。

常见使用场景:RPC框架的数据传输

2. 序列化方式

总结

面向对象编程思想把所有的有形或无形的事物都看作对象,并给对象赋予相应的属性和行为 建立对象之间的联系 使程序员更加立体、形象地解决编程领域的问题。

相关推荐
魏 无羡6 小时前
webclient
java·webclient
神仙别闹6 小时前
基于 C++ 实现两个有序链表序列的交集
java·c++·链表
swordbob7 小时前
ReentrantLock 与 AQS 完整学习手册
java·开发语言
m0_587383008 小时前
全民健身解决方案软件开发实战:从架构设计到落地指南
java·spring boot·spring·架构·需求分析
白山编程大哥8 小时前
Java OutputStreamWriter 详解:从字符到字节的桥梁
java·开发语言·python
一技安身9 小时前
【信创】Docker‑Compose V2 两种离线部署(独立模式、插件模式)简易教程
java·docker·eureka
七夜zippoe9 小时前
为什么 2026 年每个 Java 团队都该懂 AI Agent
java·开发语言·人工智能
时凌云.9 小时前
【2026最新】JDK 下载安装与环境配置全教程(Windows/Mac/Linux 三平台,零基础友好)
java·linux·macos
Despacito100610 小时前
Java后端性能探查工具速查表
java·开发语言
蓝桉柒710 小时前
下载idea,用idea输入一个程序
java·ide·intellij-idea