当前位置: 首页 > news >正文

零点起飞学Android——期末考试课本复习重点

目录

  • 第一章 认识Android
  • 第二章 Android常见界面布局
  • 第三章 Android常用基本控件
  • 第四章 Android 高级控件
  • 第五章 Android菜单和对话框

第一章 认识Android

1. Android 界面设计被称为______。
答案:布局
2. Android中常见的布局包括______、______ 、______ 、______ 、______ 五种。

  • 相对布局RelativeLayout
  • 线性布局LinearLayout
  • 表格布局TableLayout
  • 网格布局GirdLLayout
  • 帧布局FrameLayout。

3. 什么是dp,px,sp?

  • dp:设备独立像素
  • px:像素
  • sp:放大像素

必考:Android应用程序结构:

  • src:存放程序源代码
  • gen:系统自动生成,无需手动修改。最重要的就是R.java文件,保存了程序中断用到的所有控件和资源的ID。
  • assets:存放不进行编译和加工的原生文件,这里的资源文件不会再 R.java 自动生成 ID。
  • drawable-hdpi:存放高分辨率图片。
  • drawable-ldpi:存放低分辨率图片。
  • drawable-mdpi:存放中分辨率图片。
  • drawable-xhdpi:存放超高分辨率图片。
  • layout:项目的布局文件,就是应用程序界面的XML文件。
  • menu:菜单文件,同样为XML格式,在此可以为应用程序添加菜单。
  • values:该目录存放的XML文件,定义了各种格式的键值对
  • AndroidManifest.xml:这是程序的清单文件。应用程序的所有组件,都需要早该文件中进行注册,否则程序无法识别,不能使用。

第二章 Android常见界面布局

4. 相对布局分为______ 、______ 两种。

  • 相对父容器布局
  • 相对控件布局

5.相对父容器布局的使用。在相对布局中添加一个Button,在父容器中水平居中,Button顶端与父容器上边框对齐,Button上边缘距父容器上边缘64dp

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"tools:context="${relativePackage}.${activityClass}" ><!-- Button控件margin:距离  alignParentTop:对齐顶部centerHorizontal:中心水平--><Buttonandroid:id = "@+id/button1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignParentTop="true"android:layout_centerHorizontal="true"android:layout_marginTop = "64dp"android:text="@string/button1"/>
</RelativeLayout>

6. 相对控件布局的使用。添加一个Button2位于Button1右下方,并且设置Buttton2上边缘距Button1 38dp。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent" ><Buttonandroid:id="@+id/button1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignParentTop="true"android:layout_centerHorizontal="true"android:layout_marginTop="64dp"android:text="@string/button1" /><Buttonandroid:id="@+id/button2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_below="@+id/button1"android:layout_marginTop="38dp"android:layout_toRightOf="@+id/button1"android:text="@string/button2" /></RelativeLayout>

7. 线性布局可以分为______ 、 ______ 两种。

  • 水平线性布局
  • 垂直线性布局

8. 水平线性布局的使用

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent" android:orientation = "horizontal"</LinearLayout 

9.垂直线性布局的使用

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent" android:orientation="vertical">//修改布局-当前为垂直<Buttonandroid:id="@+id/button1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="@string/button1" /><Buttonandroid:id="@+id/button2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="@string/button2" /></LinearLayout>

第三章 Android常用基本控件

10. Android常用基本控件有______ 、 ______ 、 ______ 、 ______ 、 ______ 、 ______ 。

  • TextView(文本框)
  • EditText(编辑框)
  • Button(按钮)
  • CheckBox(多选按钮)
  • RadioButton(单选按钮)

11. 在布局文件中声明的控件,只负责界面显示。如果要想使用控件实现某些具体功能,就需要在Activety中编辑代码实现。实现过程如下:

  • 使用xxx来加载布局文件
  • 使用xxx获取控件引用
  • 使用这个引用对控件进行操作

12. 文本类控件主要用于在界面中显示文本, 包含______ 、______两种。

  • TextView
  • EditView

13. Button类控件主要包括______ 、 ______ 、 ______ 、 ______ 、 ______ 五种。

  • Button
  • ImageButton
  • ToggleButton
  • RadioButton
  • CheckBox

14. 为Button注册监听的两种办法

  • 逻辑代码中编写OnClick方法
  • 布局代码中绑定匿名监听器,并重写click方法

layout 布局代码

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent" ><Button android:id="@+id/button1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="@string/button1"/><Buttonandroid:id="@+id/button2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignParentLeft="true"android:layout_marginTop="60dp"android:onClick="click"android:text="@string/button2" /></RelativeLayout>

逻辑代码

package com.example.button;import android.os.Bundle;
import android.app.Activity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;public class MainActivity extends Activity {Button button1,button2;@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);button1 = (Button)findViewById(R.id.button1);button2 = (Button)findViewById(R.id.button2);button1 .setOnClickListener(new OnClickListener() {public void onClick(View v) {// TODO Auto-generated method stubsetTitle("Button1注册成功");}});}public void click(View v) { setTitle("Button2注册成功");}    }

15. ToggleButton的使用

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent" ><ToggleButtonandroid:id="@+id/toggleButton1"android:layout_width="1500dp"android:layout_height="80dp"android:layout_alignParentLeft="true"android:layout_alignParentTop="true"    android:textOn="开"  android:textOff="关"/></RelativeLayout>

16. RadioButton的使用:选择坐飞机还是坐轮船
布局代码如下:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:id="@+id/LinearLayout1"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical" ><TextView android:id="@+id/tv1"android:layout_width="wrap_content"android:layout_height="wrap_content"  android:textSize="30sp"android:text="请选择:" /><RadioGroupandroid:id="@+id/rg1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:orientation="vertical" ><RadioButtonandroid:id="@+id/rb1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:textSize="30sp"android:text="火车" /><RadioButtonandroid:id="@+id/rb2"android:layout_width="wrap_content"android:layout_height="wrap_content"android:textSize="30sp"android:text="飞机" /></RadioGroup><TextView android:id="@+id/tv2"android:layout_width="wrap_content"android:layout_height="wrap_content"  android:textSize="30sp"android:text="您选择的是:" />
</LinearLayout>

关键逻辑代码

radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {public void onCheckedChanged(RadioGroup group, int checkedId) {// TODO Auto-generated method stubif (checkedId == R.id.rb1) {textView.setText("您选择的是:" + radioButton1.getText());}else {textView.setText("您选择的是:" + radioButton2.getText());}}
});

17.时钟控件包括______和______,前者______时钟,只显示分和秒,后者显示______时钟,可精确到秒

  • AnalogClock
  • DigitalClock
  • 模拟
  • 数字

第四章 Android 高级控件

18. 进度条有______ 、______ 、______ 、______ 四种。

  • Large
  • Normal
  • Small
  • Horizontal

19. ProgressBar 的属性表

属性名称属性说明
style设置进度条样式
max进度条的最大进度值
progress第一进度值
secondaryProgress次要进度值

20. ProgressBar 的使用

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent" ><ProgressBarandroid:id="@+id/progressBar1"style="?android:attr/progressBarStyleHorizontal"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignParentLeft="true"android:layout_alignParentRight="true"android:layout_alignParentTop="true"android:layout_marginTop="36dp"android:max="100"android:progress="75"android:secondaryProgress="50" /><ProgressBarandroid:id="@+id/progressBar2"style="?android:attr/progressBarStyleSmall"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignParentLeft="true"android:layout_below="@+id/progressBar1"android:layout_marginTop="24dp" /><ProgressBarandroid:id="@+id/progressBar3"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignParentLeft="true"android:layout_below="@+id/progressBar2"android:layout_marginTop="76dp" /><ProgressBarandroid:id="@+id/progressBar4"style="?android:attr/progressBarStyleLarge"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignParentLeft="true"android:layout_below="@+id/progressBar3"android:layout_marginTop="62dp" /></RelativeLayout>

21. SeekBar的使用

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent" ><SeekBarandroid:id="@+id/seekBar1"android:layout_width="match_parent"android:layout_height="wrap_content"android:layout_alignParentLeft="true"android:layout_alignParentTop="true"android:layout_marginTop="93dp" android:thumb="@android:drawable/btn_star_big_on"      android:max="100"  android:progress="25"     /><TextViewandroid:id="@+id/textView1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignParentLeft="true"android:layout_below="@+id/seekBar1"android:layout_marginLeft="40dp" android:text="当前进度值为:25"/></RelativeLayout>

关键代码:

seekBar.setOnSeekBarChangeListener(new OnSeekBarChangeListener() {public void onStopTrackingTouch(SeekBar seekBar) {// TODO Auto-generated method stub}public void onStartTrackingTouch(SeekBar seekBar) {// TODO Auto-generated method stub}public void onProgressChanged(SeekBar seekBar, int progress,boolean fromUser) {// TODO Auto-generated method stubtextView.setText("褰撳墠杩涘害鍊硷細" + progress);}});

22. RatingBar的使用
布局代码如下:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent" ><RatingBarandroid:id="@+id/ratingBar1"style="?android:attr/ratingBarStyle"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignParentLeft="true"android:layout_alignParentTop="true"android:layout_marginTop="14dp" android:numStars="5"android:rating="4.0"android:stepSize="0.5"/><TextViewandroid:id="@+id/textView1"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_below="@+id/ratingBar1" android:layout_marginTop="20dp"android:text="受欢迎度:4.0颗星"/></RelativeLayout>

逻辑代码如下:

ratingBar.setOnRatingBarChangeListener(new OnRatingBarChangeListener() {public void onRatingChanged(RatingBar ratingBar, float rating,boolean fromUser) {// TODO Auto-generated method stubtextView.setText("受欢迎度为:" + rating + "颗星");}});

第五章 Android菜单和对话框

23. 菜单分为3类:______ 、______ 和______ 。

  • 选项菜单(Options Menu)
  • 上下文菜单(Context Menu)
  • 子菜单(Submene)

24. 对话框主要包括______ 、______ 、______ 、______ 、______ 、______ 等

  • 普通对话框
  • 提示对话框
  • 单选和复选对话框
  • 列表对话框
  • 进度对话框
  • 日期与时间对话框

25. 提示对话框AlertDialog的使用
逻辑代码如下

package com.example.alertdialog;import android.os.Bundle;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;public class AlertDialogActivity extends Activity {@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);AlertDialog.Builder builder=new AlertDialog.Builder(this);builder.setIcon(android.R.drawable.ic_dialog_info);builder.setTitle("AlertDialog");builder .setMessage("你确定删除吗");builder.setPositiveButton("确定", new DialogInterface.OnClickListener(){public void onClick(DialogInterface dialog, int which) {setTitle("确定");				}        	});builder.setNegativeButton("取消", new DialogInterface.OnClickListener() {public void onClick(DialogInterface dialog, int which) {setTitle("取消");			}});builder.show();}}

26. 什么是Toast

27. Toast的使用(必考!)

28. 开发Notification,主要涉及哪三个类?

  • Notification.Builder:一般用于动态地设置 Notification 的一些属性,即用 set 类设置;
  • NotificationManager:主要负责将 Notification 在状态栏中显示和取消;
  • Notification:主要用于设置 Notification 的相关属性。

相关文章:

零点起飞学Android——期末考试课本复习重点

目录 第一章 认识Android第二章 Android常见界面布局第三章 Android常用基本控件第四章 Android 高级控件第五章 Android菜单和对话框 第一章 认识Android 1. Android 界面设计被称为______。 答案&#xff1a;布局 2. Android中常见的布局包括______、______ 、______ 、____…...

Redis为什么快?

目录 Redis为什么快&#xff1f;渐进式ReHash全局哈希表渐进式ReHash 缓存时间戳 Redis为什么快&#xff1f; 纯内存访问&#xff1b; 单线程避免上下文切换&#xff1b; 渐进式ReHash、缓存时间戳&#xff1b; 前面两个都比较好理解&#xff0c;下面我们主要来说下 渐进式…...

Zabbix从入门到精通以及案例实操系列

1、Zabbix入门 1.1、Zabbix概述 Zabbix是一款能够监控各种网络参数以及服务器健康性和完整性的软件。Zabbix使用灵活的通知机制&#xff0c;允许用户为几乎任何事件配置基于邮件的告警。这样可以快速反馈服务器的问题。基于已存储的数据&#xff0c;Zabbix提供了出色的报告和…...

水声声波频率如何划分?水声功率放大器可将频率放大到20MHz吗?

水声声波频率如何划分&#xff1f;水声功率放大器可将频率放大到20MHz吗&#xff1f; 现如今我们可以在地球任意地区实现通信&#xff0c;是因为电磁波的作用。但是我们都知道海洋占了全球十分之七面积&#xff0c;电磁波在水下衰减速度太快&#xff0c;无法做到远距离传输&am…...

网络攻防技术--论文阅读--《基于自动数据分割和注意力LSTM-CNN的准周期时间序列异常检测》

英文题目&#xff1a;Anomaly Detection in Quasi-Periodic Time Series based on Automatic Data Segmentation and Attentional LSTM-CNN 论文地址&#xff1a;Anomaly Detection in Quasi-Periodic Time Series Based on Automatic Data Segmentation and Attentional LST…...

C++ 学习 ::【基础篇:08】:C++ 中 struct 结构体的认识【面试考点:C 与 C++ 中结构体的区别】

本系列 C 相关文章 仅为笔者学习笔记记录&#xff0c;用自己的理解记录学习&#xff01;C 学习系列将分为三个阶段&#xff1a;基础篇、STL 篇、高阶数据结构与算法篇&#xff0c;相关重点内容如下&#xff1a; 基础篇&#xff1a;类与对象&#xff08;涉及C的三大特性等&#…...

Electron开发:打包和发布 Electron 应用

https://start.spring.io/ 在线数据分析网站 https://tj.aldwx.com/ https://www.spsspro.com/ win10如何分屏 拖到边缘 Electron 环境搭建 https://www.electronjs.org/zh/docs/latest/tutorial/%E6%89%93%E5%8C%85%E6%95%99%E7%A8%8B electron 隐藏菜单 electron 标题栏 设…...

【每日一题Day222】LC1110删点成林 | dfs后序

删点成林【LC1110】 给出二叉树的根节点 root&#xff0c;树上每个节点都有一个不同的值。 如果节点值在 to_delete 中出现&#xff0c;我们就把该节点从树上删去&#xff0c;最后得到一个森林&#xff08;一些不相交的树构成的集合&#xff09;。 返回森林中的每棵树。你可以按…...

[ChatGPT] 从 GPT-3.5 到 GPT-5 的进化之路 | ChatGPT和程序员 : 协作 or 取代

⭐作者介绍&#xff1a;大二本科网络工程专业在读&#xff0c;持续学习Java&#xff0c;努力输出优质文章 ⭐作者主页&#xff1a;逐梦苍穹 ⭐如果觉得文章写的不错&#xff0c;欢迎点个关注一键三连&#x1f609;有写的不好的地方也欢迎指正&#xff0c;一同进步&#x1f601;…...

6.4 GDP调试多进程程序

目录 GDB调试多进程程序 安装gdb gdb编译 运行gdb 单步运行 从头到尾运行 下一步 运行子进程 同时运行父进程 查看运行的进程 切换进程 退出 GDB调试多进程程序 set follow-fork-mode child 设置GDB调试子进程 set follow-fork-mode parent 设置GDB调试父进…...

TDengine 时序数据的保留策略

“TDengine除vnode分片之外&#xff0c;还对时序数据按照时间段进行分区。每个数据文件只包含一个时间段的时序数据&#xff0c;时间段的长度由DB的配置参数days决定。这种按时间段分区的方法还便于高效实现数据的保留策略&#xff0c;只要数据文件超过规定的天数&#xff08;系…...

Java-多线程解析1

一、线程的描述&#xff1a; 1、线程是一个应用程序进程中不同的执行路径比例如&#xff1a;一个WEB服务器&#xff0c;能够为多个用户同时提供请求服务&#xff1b;而 -> 进程是操作系统中正在执行的不同的应用程序,比如&#xff1a;我们可以同时打开系统的word和游戏 2、多…...

PHP 判断用户当前坐标是否在电子围栏内

可以使用射线法判断用户当前坐标点是否在电子围栏内。 具体步骤如下&#xff1a; 1. 将电子围栏的四个角坐标按顺序连接成一个封闭多边形。 2. 从用户当前坐标点向外发射一条射线&#xff0c;判断这条射线与多边形的交点个数。 3. 如果交点个数为奇数&#xff0c;则用户当前…...

Java版本工程管理系统源码企业工程项目管理系统简介

一、立项管理 1、招标立项申请 功能点&#xff1a;招标类项目立项申请入口&#xff0c;用户可以保存为草稿&#xff0c;提交。 2、非招标立项申请 功能点&#xff1a;非招标立项申请入口、用户可以保存为草稿、提交。 3、采购立项列表 功能点&#xff1a;对草稿进行编辑&#x…...

高速缓存(cache)的原理: 了解计算机架构与性能优化

计基之存储器层次结构 Author&#xff1a; Once Day Date&#xff1a; 2023年5月9日 长路漫漫&#xff0c;而今才刚刚启程&#xff01; 本内容收集整理于《深入理解计算机系统》一书。 参看文档: 捋一捋Cache - 知乎 (zhihu.com)iCache和dCache一致性 - 知乎 (zhihu.com)C…...

【Vue3+TS项目】硅谷甄选day04--顶部组件搭建+面包屑+路由鉴权

顶部组件搭建 顶部左侧折叠和面包屑实现 左侧菜单刷新折叠的问题解决---属性default-active 折叠之后图标不见&#xff1a;icon放在插槽外面----element的menu属性&#xff1a;collapse project\src\layout\index.vue // 获取路由对象 import { useRoute } from vue-route…...

某oa 11.10 未授权任意文件上传

漏洞简介 之前也对通达 oa 做过比较具体的分析和漏洞挖掘&#xff0c;前几天看到通达 oa 11.10 存在未授权任意文件上传漏洞&#xff0c;于是也打算对此进行复现和分析。 环境搭建 https://www.tongda2000.com/download/p2019.php 下载地址 &#xff1a;https://cdndown.tongda…...

Grounded Language-Image Pre-training(论文翻译)

文章目录 Grounded Language-Image Pre-training摘要1.介绍2.相关工作3.方法3.1统一构建3.2.语言感知深度融合3.3.使用可扩展的语义丰富数据进行预训练 4.迁移到既定的基准4.1.COCO上的zero-shot和监督迁移学习4.2.LVIS上的zero-shot 迁移学习4.3.Flickr30K实体上的 phrase gro…...

设计模式-行为型模式(模板方法、策略、观察者、迭代器、责任链、命令、状态、备忘录、访问者、中介者、解释器)

行为型模式&#xff1a;专注于对象之间的 协作 及如何通过彼此之间的交互来完成任务。行为型模式通常集中在描述对象之间的 责任 分配和 通信 机制&#xff0c;并提供了一些优雅解决特定问题的方案。 模板方法模式(Template Method Pattern)策略模式(Strategy Pattern)观察者模…...

全面探讨 Spring Boot 的自动装配机制

Spring Boot 是一个基于 Spring 框架的快速开发脚手架&#xff0c;它通过自动配置机制帮助我们快速搭建应用程序&#xff0c;从而减少了我们的配置量和开发成本。自动装配是 Spring Boot 的核心特点之一&#xff0c;它可以减少项目的依赖&#xff0c;简化配置文件&#xff0c;提…...

河道水位监测:河道水位监测用什么设备

中国地形复杂&#xff0c;气候多样&#xff0c;导致水资源分布不均&#xff0c;洪涝和干旱等问题时有发生。同时&#xff0c;人类活动也对水资源造成了很大压力&#xff0c;工业和农业用水增加&#xff0c;河道水位下降&#xff0c;生态环境受到威胁。因此&#xff0c;对河道水…...

嵌入式系统中u-boot和bootloader到底有什么区别

嵌入式软件工程师都听说过 u-boot 和 bootloader&#xff0c;但很多工程师依然不知道他们到底是啥。 今天就来简单讲讲 u-boot 和 bootloader 的内容以及区别。 Bootloader Bootloader从字面上来看就是启动加载的意思。用过电脑的都知道&#xff0c;windows开机时会首先加载…...

实验14:20211030 1+X 中级实操考试(id:2498)

实验14&#xff1a;20211030 1X 中级实操考试&#xff08;id&#xff1a;2498&#xff09; 一、项目背景说明二、表结构三、步骤【5 分】步骤 1&#xff1a;项目准备【5 分】步骤 2&#xff1a;完成实体类 Member【10 分】步骤 3&#xff1a;完成实体类 Goods【10 分】步骤 4&a…...

(字符串 ) 剑指 Offer 58 - II. 左旋转字符串 ——【Leetcode每日一题】

❓剑指 Offer 58 - II. 左旋转字符串 难度&#xff1a;简单 字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如&#xff0c;输入字符串"abcdefg"和数字2&#xff0c;该函数将返回左旋转两位得到的…...

EPICS编程

提纲 1&#xff09; 为什么在EPICS上编程 2&#xff09;构建系统特性&#xff1a;假设基本理解Unix Make 3&#xff09;在libCom中可用的工具 1&#xff09; 为什么在EPICS上编程 1、社区标准&#xff1a;EPICS合作者知道和明白EPICS结构 2、在很多操作系统之间代码移值性…...

17:00面试,还没10分钟就出来了,问的实在是太...

从外包出来&#xff0c;没想到死在另一家厂子 自从加入这家公司&#xff0c;每天都在加班&#xff0c;钱倒是给的不少&#xff0c;所以也就忍了。没想到8月一纸通知&#xff0c;所有人不许加班&#xff0c;薪资直降30%&#xff0c;顿时有吃不起饭的赶脚。 好在有个兄弟内推我去…...

docker都有那些工具,及工具面试题

docker介绍 Docker 是一种开源的容器化平台&#xff0c;可以帮助开发者将应用程序和依赖项打包到轻量级的容器中&#xff0c;然后部署到任何基于 Linux 的操作系统中。使用 Docker 可以大大简化开发、部署和管理应用程序的过程&#xff0c;使其更加快速、灵活和可靠。 Docker…...

LAMP网站应用架构

LAMP 一、LAMP概述1、各组件的主要作用2、构建LAMP各组件的安装顺序 二、编译安装Apache httpd服务1、关闭防火墙&#xff0c;将安装Apache所需软件包传到/opt目录下2.安装环境依赖包3.配置软件模块4.编译及安装5.优化配置文件路径&#xff0c;并把httpd服务的可执行程序文件放…...

C++虚函数virtual(动态多态)(纯虚函数)

怎么判断函数是虚函数还是普通函数&#xff1f; 用VS&#xff0c;在调用对象的方法的地方。。按altg &#xff0c;如果他跳转到正确的函数&#xff0c;那也就意味着他是编译时可以确定的。。。 但是如果他跳到了这个调用对象的基类的函数&#xff0c;那么也就意味着他是一个运行…...

【Java 接口】接口(Interface)的定义,implements关键字,接口实现方法案例

博主&#xff1a;_LJaXi Or 東方幻想郷 专栏&#xff1a; Java | 从入门到入坟 专属&#xff1a;六月一日 | 儿童节 Java 接口 接口简介 &#x1f383;接口的定义 &#x1f9e7;接口实现类名定义 &#x1f381;接口实现类小案例 &#x1f388;后话 &#x1f3b0; 接口简介 &…...