springboot第47集:【思维导图】面向对象,关键字,标识符,变量,...
关键字:class,public,static,void等,特点是全部关键字都是小写字母。
image.png image.png凡是自己起的名字可以叫标识符
image.png image.png image.png image.png整数类型的使用
image.png image.png image.png浮点类型
image.png image.png字符类型:char,不能为空
image.png image.png image.png image.png image.png image.png image.png image.png image.png image.png image.png image.png image.png数组
image.png线性查找,二分查找
image.png image.png image.png image.png image.png数组: List,Set,Map
image.png image.png面向对象
image.png image.png image.png image.png image.png image.png image.png image.png构造器
image.png image.png image.png image.png image.png image.png image.png image.png重载(Overloading)和多态(Polymorphism)是Java中两个重要的概念,它们分别表示在同一个类中使用相同的方法名,但是根据参数的不同或者继承关系的不同,会有不同的行为。
重载示例:
public class Calculator {
// 重载的方法,参数个数不同
public int add(int a, int b) {
return a + b;
}
// 重载的方法,参数类型不同
public double add(double a, double b) {
return a + b;
}
// 重载的方法,参数顺序不同
public int add(int a, int b, int c) {
return a + b + c;
}
public static void main(String[] args) {
Calculator calculator = new Calculator();
System.out.println(calculator.add(2, 3)); // 调用第一个add方法
System.out.println(calculator.add(2.5, 3.5)); // 调用第二个add方法
System.out.println(calculator.add(1, 2, 3)); // 调用第三个add方法
}
}
多态示例:
class Animal {
public void sound() {
System.out.println("Animal makes a sound");
}
}
class Dog extends Animal {
public void sound() {
System.out.println("Dog barks");
}
}
class Cat extends Animal {
public void sound() {
System.out.println("Cat meows");
}
}
public class PolymorphismExample {
public static void main(String[] args) {
Animal animal1 = new Dog();
Animal animal2 = new Cat();
animal1.sound(); // 调用的是Dog类的sound方法
animal2.sound(); // 调用的是Cat类的sound方法
}
}
image.png
super
image.png image.png image.png image.png image.png image.png image.png image.png image.png image.png image.png image.png image.png image.png image.pngequals
image.png image.png image.png image.png image.png image.png image.png image.png image.png image.png image.png image.png image.png image.png单例模式实现思路
image.png image.png image.png image.png image.png立即加载(随着类的加载而加载),懒加载
生命周期过长,也可以说泄漏
image.png image.png image.png image.png image.png image.png image.png image.png image.png匿名实现类的匿名对象
image.png image.png image.png枚举
image.png- PID(进程ID): 28538
- 用户: root
- %CPU(CPU使用率): 98.7
- %MEM(内存使用率): 0.1
- VSZ(虚拟内存大小): 111512 KB
- RSS(常驻集大小): 2036 KB
- TTY/STAT/START TIME(终端/状态/启动时间): 在片段中未提供
- COMMAND(命令): [kswapd0]
一些关键字段的解释:
- %CPU: 进程的CPU使用百分比。
- %MEM: 进程的物理RAM(内存)使用百分比。
- VSZ: 虚拟内存大小,包括进程可以访问的所有内存,包括已交换出去的内存。
- RSS: 常驻集大小,是进程在RAM中的部分内存(非交换的)。
COMMAND字段显示这个进程被命名为[kswapd0]
。kswapd0
是一个内核线程,负责在内存中进行页面的换入和换出。它是Linux内核内存管理子系统的一部分,参与处理当系统的物理内存已满时的交换空间。
- PID(进程ID): 进程的唯一标识符。
- USER(用户): 进程的所有者。
- %CPU(CPU使用率): 进程占用CPU的百分比。
- %MEM(内存使用率): 进程占用物理内存的百分比。
- VSZ(虚拟内存大小): 进程的虚拟内存大小。
- RSS(常驻集大小): 进程占用的实际内存大小。
- TTY/STAT/START TIME(终端/状态/启动时间): 一些其他进程状态信息。
- COMMAND(命令): 进程的执行命令或名称。
对于你提供的部分信息,其中一些关键进程包括:
- kswapd0(PID 28538): 内核线程,负责管理内存的交换操作。
- rsyslogd(PID 1303): 系统日志守护进程。
- java(PID 12820): Java进程,可能是在运行某个Java应用程序。
- beam.smp(PID 8994): Erlang/OTP BEAM虚拟机的一个实例,通常与Erlang或Elixir应用相关。
- gitaly(PID 4157): 与Git仓库相关的Gitaly服务。
- python(PID 13576、PID 13511): 两个Python进程,执行Python脚本。
- systemctl(PID 13241): Systemd的控制进程。
- 1panel(PID 12395): 一个名为"1panel"的进程。
- YDService(PID 13429): 一个名为"YDService"的进程。
CPU核心数 = 车道数量
内存 = 车道宽度
磁盘IO = 车道限速
影响服务器负载的因素:
1、CPU使用率
2、线程数量
3、IO使用率
4、swap使用率
5、因宿主机负载过高导致资源分配不足
Nginx 默认的文件上传大小由 client_max_body_size
指令控制,默认值为 1 兆字节。如果你需要允许更大的文件上传,你需要调整这个值。
以下是一个设置较大上传文件大小的 Nginx 配置示例:
http {
# 其他配置...
client_max_body_size 20M; # 将最大上传大小设置为 20 兆字节
# 服务器配置...
}
在这个示例中,我将 client_max_body_size
设置为 20 兆字节,你可以根据实际需要调整这个值。M
代表兆字节,你也可以使用 K
表示千字节,或者 G
表示吉字节。
在修改配置后,别忘了重新加载或重启 Nginx:
sudo systemctl reload nginx # 对于使用 systemd 的系统
加群联系作者vx:xiaoda0423
仓库地址:https://github.com/webVueBlog/JavaGuideInterview