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

目录

  • [一. 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. 序列化方式

总结

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

相关推荐
czhc11400756633 分钟前
C# 1221
java·servlet·c#
黄俊懿5 分钟前
【深入理解SpringCloud微服务】Seata(AT模式)源码解析——全局事务的回滚
java·后端·spring·spring cloud·微服务·架构·架构师
派大鑫wink10 分钟前
【Day12】String 类详解:不可变性、常用方法与字符串拼接优化
java·开发语言
JIngJaneIL13 分钟前
基于springboot + vue健康管理系统(源码+数据库+文档)
java·开发语言·数据库·vue.js·spring boot·后端
秋饼15 分钟前
【三大锁王争霸赛:Java锁、数据库锁、分布式锁谁是卷王?】
java·数据库·分布式
电商API&Tina17 分钟前
【电商API接口】关于电商数据采集相关行业
java·python·oracle·django·sqlite·json·php
刘一说21 分钟前
Spring Boot中IoC(控制反转)深度解析:从实现机制到项目实战
java·spring boot·后端
悟空码字22 分钟前
SpringBoot参数配置:一场“我说了算”的奇幻之旅
java·spring boot·后端
我居然是兔子24 分钟前
Java虚拟机(JVM)内存模型与垃圾回收全解析
java·开发语言·jvm
关于不上作者榜就原神启动那件事26 分钟前
Spring Data Redis 中的 opsFor 方法详解
java·redis·spring