关键字:class,public,static,void等,特点是全部关键字都是小写字母。
凡是自己起的名字可以叫标识符
整数类型的使用
浮点类型
字符类型:char,不能为空
数组
线性查找,二分查找
数组: List,Set,Map
面向对象
构造器
重载(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方法
}
}
super
equals
单例模式实现思路
立即加载(随着类的加载而加载),懒加载
生命周期过长,也可以说泄漏
匿名实现类的匿名对象
枚举
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