SAP SD学习笔记04 - 出荷Plant(交货工厂),出荷Point(装运点),输送计划,品目的可用性检查,一括纳入/分割纳入,仓库管理
上一章讲了SD的主数据。
SAP SD学习笔记03 - SD模块中的主数据-CSDN博客
本章讲出荷Plant(交货工厂),出荷Point(装运点)和出和路线。
还是偏理论多一些,后面的文章尽量多加些练习巩固一下。
1,出荷Plant(交货工厂)
SD中,Plant 也叫出荷Plant(交货工厂)。
就是说工厂其实像仓库一样,比如经常说,东西存放在工厂的某某保管场所里面。
下图说明了出荷Plant的决定顺序:
- 得意先/ 品目情报(特定品目给到特定客户,这种最细的设定是最优先的)
- 出荷先(全部品目给到特定客户,较优先) ※一般都是考虑距离上近等特殊设定
- 品目(全品目,最普通)

2,出荷Point(装运点)
出荷Point是SAP中处理装运的组织单位。
2-1,出荷Plant别的出荷Point
SAP中多个工厂可以共用一个装运点。
当然这些工厂在物理上要离得近,不然系统上设了也没啥用。
有的时候一个办公地点挂两个牌子(两个工厂),那么它们肯定要共用出荷Point。
- Leadtime:由出荷先到出荷Point所需时间
- 准备:装运所需设备等的准备(比如大件货物需要铲车,吊车等)

2-2,出荷Point的自动决定
有三个要素来决定出荷Point:
- 出荷条件
- 積載Group
- 出荷Plant:参照上面的【1,出荷Plant】
其他代替出荷Point:虽然初期是上述3个要素决定的,但是还是可以去改,可以在Customize配。

1), 積載Group
来自于品目

品目的 一般/ Plant Tab
積載Group:
- 0001 起重机
- 0002 叉车
- 0003 手动...

2),出荷条件
- 至急:比如专车
- 最低Cost:比如每隔2,3个小时,发一辆车
出荷管理 Tab
出荷条件:虽然这里面有很多,但现场一般也就2个,至急和标准,不然客户有选择困难
- 01 至急
- 02 标准
- 03 一括处理...

3,输送计划
3-1,路线的概念及决定要素
上面的1,2 确定了从哪个工厂出荷,从哪个出荷Point装货,这里的路线要定从哪条路运到目的地
但是其实在现场有些公司不用SAP这个功能,有他们用的更习惯,更省钱的系统。
日本定运费不是随便定,他们役所有个表,各个公司定的运费以那个表为基准。
定运费的时候,可以输入起点终点的邮政编码,就会出来一个基准金额,然后你再自己浮动。
这一套东西如果想用到SAP上得用Add-on来做,挺麻烦的。
所以有的公司就是弄个Interface,和外部系统交互,等运完了,FI那边输入一下运费就完事儿了。

输送路线的自动决定的要素:
- 出荷区域
- 出荷条件
- 输送Group
- 出荷先的纳入区域

3-2,输送计划
输送计划要考虑很多因素:
- 准备时间 (Picking(拣货),Packing(打包))等
- 装载时间:货物准备完了,可以开始装车。有的货物,比如汽车,钢材等还包含固定所需时间
- 输送手段手配日数(Leadtime):运输提前期,即准备要运输的货物所花时间。比如,运送会社的船、卡车等的预约・安排等所花日数
- 配送时间(在途时间):货物运送到客户处路上所花时间

整个输送计划包含如下因素:
- 受注日付:收到订单日
- 品目利用可能日:确认完有足够的品目可供Picking(拣货)与打包
- 输送计划日付:
- 積載日付:Picking,打包已完,可以开始装车
- 出库日付:离开出荷Plant的日期
- 纳入日付:交货日
- 希望纳入日付:客户希望的交货日
- 纳入完了日:客户收货日

这几个日期在画面上也是可以看到的。
VA03 标准受注 > 调达 Tab

双击明细栏位,打开

这里就有:
- 输送计划日付
- 品目利用可能日
- 積載日付
- 出库日付
- 出荷日付/纳入日付

3-3,逆日程计划 / 顺日程计划
- 逆日程计划:根据指定纳期逆向推定 品目利用可能日 和 输送计划
这个一般就是收订单的时候,客户说哪天要,咱们这边来判断行不行的时候用

- 顺日程计划:根据品目利用可能日 推定 确定济纳入日付
这个就是逆日程计划推定结果是不行,做不到的时候,那么算咱们这边尽最大努力的结果是什么

在SAP画面上怎么体现这个 逆/顺日程计划呢?
VA01 标准受注
- 纳入期日:2024/04/19
- 今天日期:2024/04/10

但是客户发注的时候说,就想明天(2024/04/11)要货。
所以我们可以在SAP上,纳入期日栏位改为 2024/04/11

注意S栏位(即 复数纳入日期行 栏位)的勾被自动勾上了。
点一下 S栏位,按F1
意思就是SAP说该行有 复数纳入日程行,让我们确认一下 确认济数量 栏位,以确保受注数量。
其实基本就是SAP通过逆日程计划计算之后,发现根本满足不了客户需求,
于是SAP自动通过顺日程计划,给了一个能做的最大努力之后的结果。

双击该栏位,点 纳入日程行 Tab,还真有2行
- 2024/4/11 行:受注数量栏位 是 2,确认数量栏位 是 0,意思是交不了货
- 2024/4/12 行:确认数量栏位 是 2,意思是最大努力结果就是 12号可以交 2个
然后营业需要做的事情,就是跟客户交涉,看12号行不行。
- 如果客户说行,那就万事OK
- 如果客户说不行,那看看内部自己再调整啊,实在不行的话,可能就只能跟客户说实在做不了了

回到受注画面 > 出荷管理 Tab
纳入日付是 12 号,不是 11 号。
所以如果 复数纳入日期行 自动勾上的话,表示客户需求满足不了了,一定要进去看一下
另外SAP没Check那么严格,你就是这么样就保存也是可以保存的。
那有些公司想严格点儿,既然满足不想让你随便保存,那就需要扩张,加Check

有关扩张的概念,可以参照下面文章:
SAP MM学习笔记7-SAP标准功能和Add-on之间的关系_fit gap analyse需求匹配分析-CSDN博客
简单来说,就是左下角的绿色的 扩张 那个地方。

4,可用性检查的基础
简单来说就是确认客户要的货,咱们还有没有在库。
需要注意的是,不能单纯在 MMBE 看当前的在库状况照会,
因为有些货可能已经卖了,只是还没出库而已。
4-1,可用性检查的要素
咱们这里简单说一下可用性检查的要素:
- 利用可能在库确认

在 MM03 > 一般/Plant Tab

- 品目利用可能日

- 出荷Plant
有关出荷Plant(交货工厂)的决定 参照 上面的【1,出荷Plant】

4-2,可用性检查要素之 利用可能在库的制御要素
品目利用可能日 和 出荷Plant 还挺好理解的吧,咱们这里就说说 利用可能在库确认 的制御。
- 上面那行是正要素
- 在库
- 购买发注:比如虽然还没到货,但是根据计划明天到货等
- 购买依赖:已经收到购买依赖了,接下来要安排购买发注
- 计划手配:已经安排生产
- 下面那行是负要素
- 受注所要量:通过别的订单已经卖掉了
- 入出库预定:生产所需的原材料,半成品之类的,自己内部的消耗,预定要入出库
当然也不是所有这些要素都要看的。
有些公司只看 在库 和 受注所要量 这种已经确定的部分,其他没定下来之前先不看了也是可以的。

具体这些要素是在哪儿设定的呢?就是MM03画面上的 利用可能在库确认 栏位。
按F1,选 Customize 图标可定位到Customize部分。
但咱们今天先不看Customize,咱就从画面看一下 利用可能在库确认 栏位具体由什么项目组成。

通过例子看 利用可能在库确认 项目是怎么影响Check的。
1),MMBE 查看品目在库
品目M9901,其利用可能在库:4980 ST
- Plant 1000:2000
- Plant 1200:2980

2),MM03 查看利用可能在库确认
利用可能在库确认
- 02:个别所要量

3),VA01 受注登录 中 查看在库确认范围
这里入力 2000(在库正好够)的话,则可以入力

入力 2010 个的话,则会 跳到 利用可能在库管理 画面
意思是 2010 个一次性的话纳入不了,需要分割纳入

点 ATP 数量,跳到 利用可能在库概要 画面
- 利用可能在库chk:02
这个和 MM03 里面的 利用可能在库确认 字段的设定是一样的。

点 在库确认范围 图标
这个画面就表示了 在库确认范围

这些设定就和咱们下面这张图里面说的 在库,购买发注,...相关
比如上图 设定的是【02:个别所要量/ A:受注】,
它就勾上了购买发注,购买依赖,这样客户发注的时候咱们显得有货,可以比较好拿订单
- 包含 购买发注
- 包含 购买依赖...
然后像这种情况的话,MM里面跑一下MRP,就会自动生成购买依赖,自动补货了。

回到VA01 画面,复数纳入日期行 栏位已经被置为 ON,点 明细的纳入日程行 按钮

可以看到确认数量为 2000,而受注数量为 2010

4),MM02 改一下 利用可能在库确认
02 个别所要量 --》 01 日别所要量

再次输入 2010 个,S栏位(复数纳入日期行)也没有置为 ON

点 明细利用可能在库确认 图标,
发现在 利用可能在库管理 画面多了一个 Lead Time终了 栏位:2024/4/12

点 在库确认范围 按钮,
- 无补充Leadtime --》OFF
即 可以考虑补充Leadtime,也就是说客户想 2024/4/19要货,虽然现在在库不足,
但是这个Leadtime 足够我调达到足够的货给客户,而且我在 2024/4/12 号之前就能搞定。
之前 利用可能在库确认 字段是【02 个别所要量】的时候,这个【无补充Leadtime】是ON,
意思是不考虑Leadtime,也就是说只看现在,比如 在库+购买发注+购买依赖...
这样咱们就明白了,MM03 中的这个 利用可能在库确认 字段 是可以影响在库确认范围的。

5,一括纳入/ 分割纳入
5-1,一括纳入/ 分割纳入的概念
- 一括纳入:货物都收集齐了再发货
- 分割纳入:
- 多个商品,分割发货,其中某个商品而言,就不再分割了(比如1400-300)
- 多个商品,分割发货,其中某个商品也可以再分割发货(比如1400-100,1400-200)

5-2,分割纳入/回数的默认值
- BP(得意先/出荷先)
- 得意先/品目情报

1),BP(得意先/出荷先)
XD01/02 得意先(出荷先)里面设定。
比如 得意先(出荷先)9002,设定了如下默认值,出荷传票里面默认就带出来了:
- 一括纳入:空白
- 分割纳入(明细别):分割纳入可能
- 分割纳入(最大):9
这里说一下各个选项:
- 空白 分割纳入可能
- A 收到 1 以上的出荷数量,该受注传票即认为完了(意思是你就发一次,能发多少发多少,剩下不要了)
- 只允许1个出荷传票(含数量为0)
- 只允许一括纳入
- 后续出荷传票不限(不限制后续继续交货)

2),得意先/品目情报
注意这里没有 一括纳入 选项的默认值设定。

5-3,SAP的画面上面哪里有一括/分割纳入呢?
- VA01 受注画面 > 利用可能在库管理
在画面上就是像下面这个样子的
- 一括纳入
- 纳入提案 (有多行的就是分割纳入)

- VA01 受注画面 > 明细Data 画面
出荷管理Tab
- 分割纳入/明细:
- 空白 分割纳入可能
- C 只允许一括纳入...
- 分纳最大回数:有些公司只允许2次,3次...,可以根据需要设定

- VA01 受注画面 > Header
Menu > Jump > Header
出荷管理 Tab
- 一括纳入:如果勾上的话,那么所有明细里面都不会再允许分割纳入了

6,仓库管理
6-1,仓库番号
- 仓库番号: 仓库管理(WM模块)中最高级别的组织单位,也用于和其他模块对接
在实际应用中,仓库单位经常对应 建筑或销售中心

下面是SAP EMW系统里面的一些概念
- 仓库番号
- 保管域Type(仓储类型)
- 保管区画(仓储区分)
- 棚番(仓位)

下图是仓库番号的下位构造:
当然这不只是SAP里面固有的,是仓库业务的基础知识。
SAP的WM模块不是很灵活,反而是有些外边的系统做得非常好。
比如说,甚至是走哪条路能把今天所需的所有货给拿出来都能算出来,效率非常高。
有些仓库(比如冷库,金库等待)是不能随便进的,进一次时间尽量短,事儿要尽量多干。
你要是一次拿一个货那你仓库管理起来太费劲儿了。
所以一般就是把SAP和这种好用的仓管管理系统对接就可以了,不用SAP自己的WM模块。

下面这些都是SAP中的WM里面的概念。
咱们这里就是说一下仓库番号 这个概念,其他的就先不研究了。

6-2,Picking处理
- 转送指图(转储单):这个就是SD和WM模块连携
- Picking指图:这个就是SD和WM模块不连携

用转送指图和不用转送指图是在哪儿区分的呢?
就是保管场所分配没分配仓库番号 来判断的:
- 分配了仓库番号:就要在WM中进行Picking处理
- 没分配仓库番号:就不需要在WM中进行Picking处理,而是直接在出荷传票上输入Picking数量
1),VA01 受注

2),VL01N 出荷传票
Picking数量为Readonly的

双击上图 明细 栏位,打开如下界面 > Picking Tab
- WM Status:A WM转送指图:要
- 仓库番号:010 简易仓库 xx
这两个东西就指明了Plant 1000/ 保管场所 0001 是分配了仓库番号的,要在 WM里面做Picking。

出荷传票界面无法直接输入Picking了,咱们先保存。
出荷伝票番号: 80016235

补充:
那么为什么有时候改保管场所就可以输入Picking了呢?

其实就是该 Plant 1200 / 保管场所 0002 的设定如下,它不需要在WM中Picking:
- WM Status:空白:【WM转送指图:不要】

3),LT03 参照出荷传票登录转送指图
- 仓库番号:010
- Plant:1000 (不输入Plant也可以)
- 出荷传票:010

这个界面其实没啥操作,就是点一下 按钮 转送指图明细生成

点 保存

保存成功
保存的时候还出了个错,搞了一阵子,发现是做得太多了,把一些旧JOB给删了就好了:
SAP SD学习笔记 - LT03中发生的SPOC003 Error in spool C call: spool overflow-CSDN博客

6-3,出库确认
4),VL02N 出荷传票 出库确认
经WM LT03 那边做完 转送指图 之后,VL02N 里面的Picking数量就可以输入了
默认已经给你输好了
咱们这边直接点 出库确认

6-4,请求传票登录
5),VF01 请求传票登录
直接就带过来出荷传票番号

回车则反映所需其他数据,直接保存

虽说保存成功,但是这个Message挺怪的:
伝票 90038081 已经保存 (会計伝票未生成)
Msg 番号 VF050

6-5,确认传票Flow
6),VA03 受注

本章讲了SAP SD模块中的非常重要的内容:
- 出荷Plant(交货工厂)
- 出荷Point(装运点)
- 输送计划
- 品目的可用性检查
- 一括纳入/分割纳入
- 仓库管理(主要就是仓库番号。在Picking的时候,要么直接Picking,要么通过WM模块)
相关文章:
SAP SD学习笔记04 - 出荷Plant(交货工厂),出荷Point(装运点),输送计划,品目的可用性检查,一括纳入/分割纳入,仓库管理
上一章讲了SD的主数据。 SAP SD学习笔记03 - SD模块中的主数据-CSDN博客 本章讲出荷Plant(交货工厂),出荷Point(装运点)和出和路线。 还是偏理论多一些,后面的文章尽量多加些练习巩固一下。 1࿰…...
bind包装器——C++新特性(三)
文章目录 bindbind函数模板的原型bind 包装器的用途其他使用示例 🎖 博主的CSDN主页:Ryan.Alaskan Malamute 📜 博主的代码仓库主页 [ Gitee ]:ryanala [GitHub]: Ryan-Ala bind bind也是一种函数包装器…...
MXNet的下载安装及问题处理
1、MXNet介绍: MXNet是一个开源的深度学习框架,以其灵活性和效率著称,支持多种编程接口,包括Python、C、R、Julia、Scala等。MXNet支持大规模分布式训练,同时兼顾CPU和GPU的计算资源,尤其擅长于模型并行和数…...
Python 中的列表排序和排序规则
Python 中的列表排序和排序规则 在 Python 中,列表的排序是一个常见的操作,可以使用内置函数 sorted() 或列表对象的 sort() 方法来完成。下面将介绍这两种方法以及排序规则的使用方式。 1. 使用 sorted() 函数排序列表(临时性排序…...
面经整理1
感觉好几个都是backtracking Letter Combinations of a Phone Number - LeetCode 典型的backtracking,注意String的处理 class Solution {String[] keyboard new String[]{"", "", "abc","def","ghi","…...
ChatGPT个人专用版 SSRF漏洞复现(CVE-2024-27564)
0x01 产品简介 ChatGPT个人专用版是一种基于 OpenAI 的 GPT-3.5 、GPT-4.0语言模型的产品。它是设计用于 Web 环境中的聊天机器人,旨在为用户提供自然语言交互和智能对话的能力。PHP版调用OpenAI接口进行问答和画图,采用Stream流模式通信,一边生成一边输出。前端采用EventS…...
Python中的可哈希与不可哈希对象详解
文章目录 1. 前置知识:哈希是什么2. 可哈希和不可哈希对象的定义2.1可哈希2.2 不可哈希 3. 对象的哈希方法3.1 自定义对象的哈希方法3.2 可哈希性与等价性3.3 哈希值的用途 推荐 在复习可变对象和不可变对象时,学到了这个内容 1. 前置知识:哈…...
【嵌入式DIY实例】-DIY速度计
DIY速度计 文章目录 DIY速度计1、硬件准备1.1 NEO-6M GPS模块介绍1.2 硬件接线原理图2、代码实现本文将介绍如何使用模拟仪表和 GPS 模块制作 DIY Arduino 速度计。 仪表用于显示当前速度,而GPS模块用于实时跟踪速度。 该项目将 Arduino 板与 GPS 模块相结合,在经典模拟仪表上…...
1.0 Hadoop 教程
1.0 Hadoop 教程 分类 Hadoop 教程 Hadoop 是一个开源的分布式计算和存储框架,由 Apache 基金会开发和维护。 Hadoop 为庞大的计算机集群提供可靠的、可伸缩的应用层计算和存储支持,它允许使用简单的编程模型跨计算机群集分布式处理大型数据集…...
【无人机/平衡车/机器人】详解STM32+MPU6050姿态解算—卡尔曼滤波+四元数法+互补滤波(文末附3个算法源码)
效果: MPU6050姿态解算-卡尔曼滤波+四元数+互补滤波 目录 基础知识详解 欧拉角...
智能水务系统:构建高效节水的城市水网
随着城市化进程的加速和人民生活水平的提高,对水务管理的需求也越来越高。传统的水务管理方式已经无法满足现代社会的需求,而智能水务系统的出现为水务管理带来了新的变革。本文将从项目背景、需求分析、建设目标、建设内容、技术方案、安全设计等方面&a…...
【JavaEE初阶系列】——网络编程 UDP客户端/服务器 程序实现
目录 🚩UDP和TCP之间的区别 🎈TCP是有连接的 UDP是无连接的 🎈TCP是可靠传输 UDP是不可靠传输 🎈TCP是面向字节流 UDP是面向数据报 🎈TCP和UDP是全双工 👩🏻💻UDP的socket ap…...
数据结构复习指导之绪论(算法的概念以及效率的度量)
文章目录 绪论: 2.算法和算法评价 知识总览 2.1算法的基本概念 知识点回顾与重要考点 2.2算法效率的度量 知识总览 1.时间复杂度 2.空间复杂度 知识点回顾与重要考点 归纳总结 绪论: 2.算法和算法评价 知识总览 2.1算法的基本概念 算法( Al…...
C语言经典例题(23)
1.求n的阶乘。(不考虑溢出) #include <stdio.h>int fac(int n);int main() {int n 0;scanf("%d", &n);int sum fac(n);printf("%d", sum);return 0; }int fac(int n) {if (n > 1){return n * fac(n - 1);}elsereturn 1; }2.求第n个斐波那契…...
Gitea的简单介绍
Gitea 是一个自由、开源、轻量级的 Git 服务程序。它是为了建立一个易于使用的、类似 GitHub 的 Git 服务而创建的。Gitea 采用 Go 语言编写,具有简单、快速、易于安装和配置的特点。 Gitea 提供了一个基本的 Web 界面,可以方便地进行代码托管、问题跟踪、协作等操作。用户可…...
Qt信号与槽
我们在使用Qt的时候,不使用Qt Designer 的方式进行开发,使用ui文件,信号与槽的连接方式是生成代码之后才能在setupUi函数里才能看到,或者需要进入Ui设计器里的信号槽模式里才能看到信号槽的连接。所以我们最好使用代码绘制界面。 …...
QQ农场-phpYeFarm添加数据教程
前置知识 plugin\qqfarm\core\data D:\study-project\testweb\upload\source\plugin\qqfarm\core\data 也就是plugin\qqfarm\core\data是一个缓存文件,如果更新农场数据后,必须要删除才可以 解决种子限制(必须要做才可以添加成功) 你不更改加入了id大于2000直接删除种子 D…...
Java中创建多线程的方法
继承Thread类,对该类进行new一个实例,对实例调用start方法,重写run方法。 缺点:单继承,无法继承 public class myThread extends Thread {public static void main(String[] args) {myThread myThread new myThread()…...
MT3020 任务分配
思路:利用二分找到某个时间是满足“k个人可以完成” ,并且时间最小。 因为尽量让后面的人做任务,所以从后往前排任务(倒着分配)。从后往前遍历任务,如果此人加上这个任务超出之前求得的时间,就…...
【Redis】事务
Redis事务是一组命令的集合。这组命令顺序化执行而不会被其他命令插入。 Redis事务命令 命令描述DISCARD取消事务,放弃执行EXEC执行事务MULTI标记事务的开始UNWATCH取消WATCH对所有key的监控WATCH监控所有key Redis事务特点 特点说明单独的隔离操作Redis命令执行…...
QMC5883L的驱动
简介 本篇文章的代码已经上传到了github上面,开源代码 作为一个电子罗盘模块,我们可以通过I2C从中获取偏航角yaw,相对于六轴陀螺仪的yaw,qmc5883l几乎不会零飘并且成本较低。 参考资料 QMC5883L磁场传感器驱动 QMC5883L磁力计…...
SCAU期末笔记 - 数据分析与数据挖掘题库解析
这门怎么题库答案不全啊日 来简单学一下子来 一、选择题(可多选) 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘:专注于发现数据中…...
[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...
相机从app启动流程
一、流程框架图 二、具体流程分析 1、得到cameralist和对应的静态信息 目录如下: 重点代码分析: 启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的…...
WEB3全栈开发——面试专业技能点P2智能合约开发(Solidity)
一、Solidity合约开发 下面是 Solidity 合约开发 的概念、代码示例及讲解,适合用作学习或写简历项目背景说明。 🧠 一、概念简介:Solidity 合约开发 Solidity 是一种专门为 以太坊(Ethereum)平台编写智能合约的高级编…...
成都鼎讯硬核科技!雷达目标与干扰模拟器,以卓越性能制胜电磁频谱战
在现代战争中,电磁频谱已成为继陆、海、空、天之后的 “第五维战场”,雷达作为电磁频谱领域的关键装备,其干扰与抗干扰能力的较量,直接影响着战争的胜负走向。由成都鼎讯科技匠心打造的雷达目标与干扰模拟器,凭借数字射…...
浅谈不同二分算法的查找情况
二分算法原理比较简单,但是实际的算法模板却有很多,这一切都源于二分查找问题中的复杂情况和二分算法的边界处理,以下是博主对一些二分算法查找的情况分析。 需要说明的是,以下二分算法都是基于有序序列为升序有序的情况…...
Spring AI与Spring Modulith核心技术解析
Spring AI核心架构解析 Spring AI(https://spring.io/projects/spring-ai)作为Spring生态中的AI集成框架,其核心设计理念是通过模块化架构降低AI应用的开发复杂度。与Python生态中的LangChain/LlamaIndex等工具类似,但特别为多语…...
Android 之 kotlin 语言学习笔记三(Kotlin-Java 互操作)
参考官方文档:https://developer.android.google.cn/kotlin/interop?hlzh-cn 一、Java(供 Kotlin 使用) 1、不得使用硬关键字 不要使用 Kotlin 的任何硬关键字作为方法的名称 或字段。允许使用 Kotlin 的软关键字、修饰符关键字和特殊标识…...
Java多线程实现之Thread类深度解析
Java多线程实现之Thread类深度解析 一、多线程基础概念1.1 什么是线程1.2 多线程的优势1.3 Java多线程模型 二、Thread类的基本结构与构造函数2.1 Thread类的继承关系2.2 构造函数 三、创建和启动线程3.1 继承Thread类创建线程3.2 实现Runnable接口创建线程 四、Thread类的核心…...
