公司网站怎么做备案信息/网站数据分析案例

公司网站怎么做备案信息,网站数据分析案例,电子商务网站建设的一般过程,河南怎样做网站推广学习目标 掌握接口语法理解接口多态熟练使用接口了解接口新特性掌握final关键字了解lambda语法 1.接口语法 1.1 接口概念 从功能上看, 实现接口就意味着扩展了某些功能 接口与类之间不必满足is-a的关系结构 从抽象上看, 接口是特殊的抽象父类 从规则上看, 接口定义者和实…

学习目标

  1. 掌握接口语法
  2. 理解接口多态
  3. 熟练使用接口
  4. 了解接口新特性
  5. 掌握final关键字
  6. 了解lambda语法

1.接口语法

1.1 接口概念

  1. 从功能上看, 实现接口就意味着扩展了某些功能

  2. 接口与类之间不必满足is-a的关系结构

  3. 从抽象上看, 接口是特殊的抽象父类

  4. 从规则上看, 接口定义者和实现者都必须遵守特定规则

1.2 面向接口编程

● 接口是设计层面的概念,往往由设计师设计,将定义与实现分离.
● 程序员实现接口,实现具体方法.
● 面向接口编程和面向对象编程并不是平级的,它并不是比面向对象编程更先进的一种独立的编程思想,而是附属于面向对象思想体系,属于其一部分。或者说,它是面向对象编程体系中的思想精髓之一
● 面向接口编程的意思是指在面向对象的系统中所有的类或者模块之间的交互是由接口完成的

1.3 接口语法

[访问权限修饰符] interface 接口名 {公开静态常量列表;公开抽象方法列表;
}
在开发中:接口的命名方式只有2XXXDao/DAO.java    XXXDaoImpl.java   xxxService.java    xxxServiceImpl.java 

1.4 接口组成部分

目前我们使用的是JDK11。

//jdk1.8+ 接口声明为函数式接口 使用标记注解  @FunctionalInterface
//@FunctionalInterface    //有且只有1个抽象方法
public interface MyInterface {//组成部分----> 都是public//1.常量  public static final  默认  final修饰的变量都是常量//接口作为常量类使用---->维护模块中很多不可变的数据//1.1 常量名称全部大写//1.2 必须赋值//1.3 值不允许被更改String NAME = "admin";int USER_PASS = 1234;//2.方法  接口比抽象类还要抽象 jdk1.8之前  接口里面的方法全部都是抽象方法  public abstract 默认//2.1 抽象方法   对于程序猿来说 使用量最多还是仅仅抽象方法 (封装行为)void demo1();int max(int num1, int num2);//2.1 功能方法---->有方法体的方法  jdk1.8+  public  defaultdefault void demo2() {System.out.println("MyInterface。。。。。demo2.。。。。");}//2.3 静态方法 jdk1.8+static String staticMethod() {System.out.println("MyInterface。。。。。staticMethod.。。。。");return "static";}//2.4 私有的静态方法  jdk1.9+   服务于其它public  static的方法private static void privateStaticMethod() {System.out.println("MyInterface。。。。。。privateStaticMethod。。。。");}//2.5 接口没有构造方法----->不能直接实例化  其实也可以 创建了 匿名内部类
}

1.5 使用接口

1 接口继承接口(extends)

接口与接口属于多继承关系。一个接口可以继承多个接口。使用extends关键字实现。

public interface AInterface extends BInterface,CInterface,....{}
public interface AInterface {void a();
}interface CInterface  {void c();
}interface BInterface extends AInterface, CInterface {//子接口与父接口的关系void b();
}

2 类实现接口(implements)

● 类与接口属于多实现关系。一个类实现多个接口。使用implements进行操作。
● 接口是比抽象类抽象层次更高的一个概念,因此和抽象类一样,它不能用于实例化对象,只能作为继承树的高层结构被子类实现(子类实现接口被称为implements(实现),其体现形式和继承类似)。
● 类实现接口,本质上与类继承类相似,区别在于“类最多只能继承一个类,即单继承,而一个类却可以同时实现多个接口”,多个接口用逗号隔开即可。实现类需要覆盖所有接口中的所有抽象方法,否则该类也必须声明为抽象类

public class 类名  extends Object implements AInter,BInter{}

注意: 一个普通类实现接口有可能会报错?

public interface UserInterface {//常量String PASS = "1234";String NAME = "admin";//方法boolean login(String name, String pass);void register();default void defaultMethod() {System.out.println("UserInterface.....public....defaultMethod......");}static void staticMethod() {System.out.println("UserInterface.....public....staticMethod......");}private void privateMethod() {System.out.println("UserInterface.....private....privateMethod......");}
}
//类实现接口称为接口的实现类
//接口就像 "招牌"
//只要类实现接口 就代表这个类中具有这些功能
//因此一个接口可以有多个实现类,有多套实现
public class UserInterfaceImpl implements UserInterface{}

一个普通类 实现接口的时候 这个类可能会报错
解决方式:
1. 将这个类改为抽象类
2. 普通类重写/实现接口里面的所有的抽象方法

//类实现接口称为接口的实现类
//接口就像 "招牌"
//只要类实现接口 就代表这个类中具有这些功能
//因此一个接口可以有多个实现类,有多套实现
public class UserInterfaceImpl implements UserInterface{@Overridepublic boolean login(String name, String pass) {System.out.println("登录成功..........");return true;}@Overridepublic void register() {System.out.println("注册成功..........");}public void test(){//在实现类中  依然可以调用父接口里面提供的静态以及default方法//1. 实现类没有重写父接口default方法  执行的是父接口的逻辑//2. 实现类重写父接口的default方法  执行的逻辑是子级重写过后的功能defaultMethod();this.defaultMethod();//3.调用父接口的静态方法,静态都是所属于class的  因此调用方式使用:  接口名称.静态方法UserInterface.staticMethod();}//可以选择重写父接口的default方法@Overridepublic void defaultMethod() {//假如有需求: 想再调用父接口的default方法逻辑.  需要使用super进行操作//但是一个普通类既可以继承又可以实现:  单独使用super默认是父类//如果是代表父接口:  接口名.super.方法UserInterface.super.defaultMethod();System.out.println("UserInterfaceImpl......重写的defaultMethod.........");}
}

在实现类中 依然可以调用父接口里面提供的静态以及default方法
1. 实现类没有重写父接口default方法 执行的是父接口的逻辑
2. 实现类重写父接口的default方法 执行的逻辑是子级重写过后的功能
3. 调用父接口的静态方法,静态都是所属于class的 因此调用方式使用: 接口名称.静态方法

创建测试类: 测试实现类的方法

  public static void main(String[] args) {//类实现接口:  层级关系//创建实现类对象  有2种方式编写//1. 普通方式创建对象:  可以调用实现类中的所有的成员UserInterfaceImpl userInterfaceImpl = new UserInterfaceImpl();System.out.println(userInterfaceImpl.login("admin", "1234"));userInterfaceImpl.register();userInterfaceImpl.test();//2.多态方式创建对象//接口不能直接实例化   满足或者服务与实现类对象的创建UserInterface userInterface = new UserInterfaceImpl();//这里就是父接口引用指向任意一个实现类对象userInterface.register();userInterface.login("admin","1234");//userInterface.test();  //存在弊端  只能直接访问接口里面存在的成员  不能访问实现类独有的方法和属性//目前而言: 以上2种方式都可以,看个人喜欢。在后期  建议使用第二种方式}

2.多态(在实现的关系下)

接口也是引用数据类型,也可以作为形参,返回值进行使用。
因此接口也是体现多态的,可以更加良好的扩展程序。

2.1 需求

使用面向对象的思想,使用接口+多态实现以下需求:

需求:
● 通过下面案例,我们来掌握在接口实现的关系下,是如何实现多态的:
○ 为各学校开发这样一个小系统,包含类型:教员、学校、打印机。
○ 具体要求如下: 教员以及学校都具有 "输出详细信息"的方法。
○ 打印机类有方法,可以打印教员或学校的详细信息。
○ 系统要具备良好的可扩展性与可维护性

2.2 创建类

@Setter
@Getter
@Accessors(fluent = true)
public class Teacher{private int id;private String name;private int age;public void showInfo() {System.out.println(name + "老师信息如下:");System.out.println(name + "的id:" + id);System.out.println(name + "的age:" + age);}
}
@Setter
@Getter
@Accessors(fluent = true)
public class School{private int id;private String name;private String address;private String phone;public void showInfo() {System.out.println(name + "信息如下:");System.out.println(name + "学校的id:" + id);System.out.println(name + "学校的address:" + address);System.out.println(name + "学校的phone:" + phone);}
}

2.3 方法重载

@Setter
@Getter
@Accessors(fluent = true)
public class Printer {private int id;private String brand;public void printInfo(Teacher a){//打印老师+学校的信息System.out.println(brand+"开始打印..........");a.showInfo();System.out.println(brand+"结束打印..........");}public void printInfo(School a){//打印老师+学校的信息System.out.println(brand+"开始打印..........");a.showInfo();System.out.println(brand+"结束打印..........");}
}

2.4 问题

上述代码中,不考虑多态与扩展性的前提下,方法重载完全可以实现功能。
弊端:
针对于printInfo功能,假如还可以打印Student等信息,需要修改源码,新增一个新的方法。
没有满足程序设计中的 “开放封闭原则”,更没有提高程序的扩展性。

2.5 解决_父类

解决:
因此,我们要基于School与Teacher这两个类进行抽象。
想多态,必须要面向父级或者面向抽象进行开发。也就是必须有父级。
发现School与Teacher这两个类,共同继承了同一个父类Object。

@Setter
@Getter
@Accessors(fluent = true)
public abstract class Printer {private int id;private String brand;public void printInfo(Object a){//打印老师+学校的信息System.out.println(brand+"开始打印..........");//a.showInfo();  根本无法通过a调用showInfo的方法System.out.println(brand+"结束打印..........");}
}

因此从父类考虑,无法实现多态。

2.6 解决_接口

//从接口进行设计,由于接口封装行为,发现Teacher与School类都有共同的行为showInfo,且实现逻辑不同。
//因此,我们可以来一个父接口,封装Teacher与School都具备的行为。
//等价于showInfo是重写InfoDao的方法
public interface InfoDao {void showInfo();
}
@Setter
@Getter
@Accessors(fluent = true)
public class Teacher implements InfoDao{private int id;private String name;private int age;public void showInfo() {System.out.println(name + "老师信息如下:");System.out.println(name + "的id:" + id);System.out.println(name + "的age:" + age);}
}
@Setter
@Getter
@Accessors(fluent = true)
public class School implements InfoDao{private int id;private String name;private String address;private String phone;public void showInfo() {System.out.println(name + "信息如下:");System.out.println(name + "学校的id:" + id);System.out.println(name + "学校的address:" + address);System.out.println(name + "学校的phone:" + phone);}
}
@Setter
@Getter
@Accessors(fluent = true)
public abstract class Printer {private int id;private String brand;public void printInfo(InfoDao a){//打印老师+学校的信息System.out.println(brand+"开始打印..........");a.showInfo(); System.out.println(brand+"结束打印..........");}
}

3.接口 VS 抽象类

● 在Java中接口是一个比抽象类更加抽象的概念,由于只声明行为,因此在接口中的方法均是抽象的,下表中罗列了接口和抽象类的差异:

在这里插入图片描述

● 成员变量方面,在接口中只存在公开静态常量(即便没有使用static final修饰,Java也会默认确定其性质)
● 成员方法方面,在接口中只存在公开抽象方法(即便没有abstract修饰,Java也会默认其抽象性质。但是JDK1.8之后,接口里面的方法更加丰富了。
相同点:

  1. 都不能直接实例化
  2. 都作为父级来使用
  3. 都是体现多态

不同点:

  1. 语法 abstract class 接口: interface
  2. 组成部分: 抽象类: 普通类+抽象方法 接口: jdk11 常量+抽象方法+default+static方法+private的功能方法
  3. 抽象类有构造—> 服务于子类对象创建 接口: 没有构造
  4. 抽象类: 定义子级都有的行为和属性。 接口: 定义子级要实现的行为。
  5. 使用场景: 子级有属性 这个时候 只能选择 类。 只有行为 其实抽象类或者接口 都可以。建议使用接口
    类与类属于单继承。 类与接口属于多实现。 从设计角度 接口更加提高升序的扩展性。

4 @FunctionalInterface

● @FunctionalInterface: 是jdk1.8提供的新特性。 函数式接口。只能在接口上使用。
● 是一个标记注解。 jdk默认提供的。 类似于 @Override
● @FunctionalInterface 加与不加都可以。
● 如果在接口上使用了这个@FunctionalInterface注解
1.标志着接口中 有且只有1个抽象方法
2.可以使用lambda表达式简化开发
● 如果我们想使用lambda语法简化开发 标志着接口中 必须有且只有1个抽象方法 。

@FunctionalInterface
public interface MyInterface {void demo();//有且只能有1个抽象方法//其它功能方法与常量可以正常存在
}

5. lambda

5.1 语法

● 面向函数式编程-----> 面向方法编程-----> 面向重写的那个方法编程
● lambda: 拉姆达语法。jdk1.8提供的新特性。
● 基本语法1:
(形参类型 变量1…形参类型 变量n)->{
//方法体 核心逻辑
}
● 简化语法2:(方法引用)
引用/对象::方法名;
类名::方法名;

● 使用lambda语法开发 目的: 替换接口匿名内部类。
● 可以根据任意一个类/接口创建匿名内部类。
● 类的匿名内部类: 等价于创建了子类。 接口的匿名内部类: 等价于是接口实现类。

5.2 使用

1. 无参无返回值

public interface MyInterface {//抽象方法//1.无参无返回值void demo();
}
class Test {public static void main(String[] args) {//接口不能直接实例化//MyInterface myInterface = new MyInterface();//接口: 创建匿名内部类// new 类名/接口名(){};//接口的匿名内部类-----> 接口的实现类//lambda表达式----> 替换接口的匿名内部类 -----> 接口里面  有且只有1个抽象方法//面向函数式编程----> 面向方法编程-----> 面向重写的那个方法编程// (形参类型 变量名称,....)->{}//1.调用接口里面的demo方法MyInterface myInterface = new MyInterface() {@Overridepublic void demo() {System.out.println("demo.................");}};//lambda简化/*MyInterface myInterface1 = () -> {System.out.println("demo1.................");};*///前提: 方法体只有1行  {}可以省略  类似if  elseMyInterface myInterface1 = () -> System.out.println("demo1.................");myInterface.demo();myInterface1.demo();}
}

2. 有参无返回值

形参有1个的时候:

@FunctionalInterface
public interface MyInterface {//抽象方法//1.无参无返回值//void demo();//2.有参无返回值//1个形参void compareStr(String str);
}
public static void main(String[] args) {//2.有参无返回值MyInterface myInterface = new MyInterface() {@Overridepublic void compareStr(String str) {System.out.println("hello".equals(str));//System.out.println(Objects.equals("hello",str));}};myInterface.compareStr("hello");//myInterface = (String abc)->System.out.println(Objects.equals("hello",abc));//重写的方法只有1个形参类型   形参类型 与  () 都可以省略myInterface = abc -> System.out.println(Objects.equals("hello", abc));myInterface.compareStr("admin");}

形参数量有多个的时候:

@FunctionalInterface
public interface MyInterface {//抽象方法//1.无参无返回值//void demo();//2.有参无返回值//1个形参//void compareStr(String str);//多个形参类型void max(int num1, int num2);
}
public static void main(String[] args) {//调用maxMyInterface myInterface = new MyInterface() {@Overridepublic void max(int num1, int num2) {System.out.println(Math.max(num1,num2));}};myInterface.max(1,10);//方法的形参类型 有多个。可以省略数据类型myInterface = (a, b)->System.out.println(Math.max(a,b));myInterface.max(1,10);}

3.有参有返回值

@FunctionalInterface
public interface MyInterface {//抽象方法//3.有参有返回值类型int max(int num1, int num2);
}
public static void main(String[] args) {MyInterface myInterface = new MyInterface() {@Overridepublic int max(int num1, int num2) {return Math.max(num1, num2);}};//myInterface = (num1, num2) ->  Math.max(num1, num2);//前提: 有参有返回值  方法体只有1行// 参数类型可以省略  {}可以省略  return 必须省略myInterface = (num1, num2) ->  Math.max(num1, num2);//重写的方法的形参类型与数量 和 方法的返回值类型  与 调用的方法的形参类型+数量与返回值类型一致的时候//引用/对象::方法名;//类名::方法名;myInterface =  Math::max;System.out.println(myInterface.max(1, 10));
}

4. 简单案例

Integer[] array = {1, 7, 8, 3, 2};
//对数组元素进行排序
// Arrays.sort(array);//升序
//想降序排列----> 自己指定对int数据的排序规则
//        Arrays.sort(array,new Comparator<>(){
//            @Override
//            public int compare(Integer num1, Integer num2) {
//                return num2-num1;
//            }
//        });Arrays.sort(array, (num1, num2) -> num2.compareTo(num1));
//        Arrays.sort(array,Comparator.reverseOrder());
Arrays.sort(array, Comparator.comparing(Integer::intValue).reversed());System.out.println(Arrays.toString(array));

何时会使用lambda?

● 只要是方法的形参类型或者返回值类型是接口(接口中只有1个抽象方法)
● 而且逻辑只用一次,可以使用lambda语法简化匿名内部类。

6.final

可以理解final是一个关键字,也可以认为是修饰符。

6.1 修饰变量

final修饰变量就是常量。

● final修饰全局变量
1. 常量名称全部大写,多个单词使用_进行关联。
2. 必须赋值,且值不允许更改。
● final修饰局部变量
1. 常量名称依然遵循小写驼峰命名。
2. 值不允许更改。

//1.修饰变量
public class FinalDemo {private FinalDemo() {//NUM1 = 10;}//1. 修饰的全局变量 private static final /  public static finalpublic static final String MY_MSG = "HELLO";private static final int NUM = 100;//一个类中  有很多常量  一般都是static  这个类要么是常量类// com.baidu.x.x.constant.UserConstant// 要么是我们工具类 com.baidu.x.x.utilpublic static final int NUM1;static {NUM1 = 200;}//2. final修饰局部变量  常量的名称不要全部大写 小写驼峰public static void login(final String nameInfo, final String pass) {// name = "aaaa";final int num = 100;}public static void main(String[] args) {login("admin", "1234");}
}

6.2 修饰类

修饰类,会导致这些类不能能被继承,不能作为父类使用。

public final class MyClass {}public class Child /*extends MyClass*/{}

6.3 修饰方法

在任何一个类中,都可以使用final修饰方法。

一般的场景用于父类: 不想让子类覆盖父类方法的时候,可以使用fina修饰方法。

public class MyClass{public final void demo1(){}
}public class Child extends MyClass{//在子类中  重写父类final修饰的方法  会出现问题//@Override//public void demo1(){//}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/69907.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

git用法(简易版)

介绍 git是一个版本管理工具 使用方法 建立仓库 第一步 git init&#xff1a;初始化仓库 第二步 git add .&#xff1a;将代码添加到暂存区 第三步 git commit -m "first"&#xff1a;为修改添加备注 第四步 git remote add origin 你的url 第五步 git pus…

数据库脚本MySQL8转MySQL5

由于生产服务器版本上部署的是MySQL5&#xff0c;而开发手里的脚本代码是MySQL8。所以只能降版本了… 升级版本与降级版本脚本转换逻辑一样 MySQL5与MySQL8版本SQL脚本区别 大多数无需调整、主要是字符集与排序规则 MySQL5与MySQL8版本SQL字符集与排序规则 主要操作&…

Flutter 双屏双引擎通信插件加入 GitCode:解锁双屏开发新潜能

在双屏设备应用场景日益丰富的当下&#xff0c;移动应用开发领域迎来了新的机遇与挑战。如何高效利用双屏设备优势&#xff0c;为用户打造更优质的交互体验&#xff0c;成为开发者们关注的焦点。近日&#xff0c;一款名为 Flutter 双屏双引擎通信插件的创新项目正式入驻 GitCod…

Mysql进阶篇(mysqlcheck - 表维护程序)

mysqlcheck的作用 mysqlcheck客户端用于执行表维护&#xff0c;可以对表进行&#xff1a;分析、检查、优化或修复操作。 &#xff08;1&#xff09;分析的作用是查看表的关键字分布&#xff0c;能够让 sql 生成正确的执行计划&#xff08;支持 InnoDB&#xff0c;MyISAM&#x…

如何使用qt开发一个xml发票浏览器,实现按发票样式显示

使用Qt开发一个按发票样式显示的XML发票浏览器&#xff0c;如下图所示样式&#xff1a; 一、需求&#xff1a; 1、按税务发票样式显示。 2、拖入即可显示。 3、正确解析xml文件。 二、实现 可以按照以下步骤进行&#xff1a; 1. 创建Qt项目 打开Qt Creator&#xff0c;创…

c++TinML转html

cTinML转html 前言解析解释转译html类定义开头html 结果这是最终效果&#xff08;部分&#xff09;&#xff1a; ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/6cf6c3e3c821446a84ae542bcc2652d4.png) 前言 在python.tkinter设计标记语言(转译2-html)中提到了将Ti…

阿里云OSS创建,及修改读写权限为公共读。

1、创建Bucket 2、创建时需要注意点 〇 名字区域等略过不讲 ①默认为同城冗余&#xff0c;但计费标准更高&#xff0c;如果对数据安全性要求不严格&#xff0c;可以改为本地。 ②如果想开启公共读&#xff0c;会发现创建时改不了&#xff0c;暂时先不改&#xff0c;完成创建…

Vulhub靶机 ActiveMQ 反序列化漏洞(CVE-2015-5254)(渗透测试详解)

一、开启vulhub环境 docker-compose up -d 启动 docker ps 查看开放的端口 漏洞版本&#xff1a;Apache ActiveMQ 5.x ~ Apache ActiveMQ 5.13.0 二、访问靶机IP 8161端口 默认账户密码 admin/admin&#xff0c;登录 此时qucues事件为空 1、使用jmet-0.1.0-all.jar工具将…

JVM——垃圾回收器

目录 垃圾回收器 垃圾回收器的组合关系&#xff1a; 年轻代-Serial垃圾回收器&#xff1a; 老年代-SerialOld垃圾回收器&#xff1a; 年轻代-ParNew垃圾回收器&#xff1a; 老年代-CMS垃圾回收器&#xff1a; 年轻代-Parallel Scavenge&#xff1a;【JDK8默认】 老年代…

数据库第三次作业

第一题&#xff1a; 学生表&#xff1a;Student (Sno, Sname, Ssex , Sage, Sdept) 学号&#xff0c;姓名&#xff0c;性别&#xff0c;年龄&#xff0c;所在系 Sno为主键 课程表&#xff1a;Course (Cno, Cname,) 课程号&#xff0c;课程名 Cno为主键 学生选课表&#xff1a;S…

类与对象(OOP)

类(Class) 类是对象的模板或蓝图&#xff0c;用来描述对象的属性和行为。 动态与静态是同一张图像&#xff0c;最终效果也是相同 类的组成分别由&#xff1a; 属性(成员变量)&#xff1a;描述对象的状态。 方法(成员方法):描述对象的行为。 构造函数&#xff1a;用于创建对象…

haproxy详解笔记

一、概述 HAProxy&#xff08;High Availability Proxy&#xff09;是一款开源的高性能 TCP/HTTP 负载均衡器和代理服务器&#xff0c;用于将大量并发连接分发到多个服务器上&#xff0c;从而提高系统的可用性和负载能力。它支持多种负载均衡算法&#xff0c;能够根据服务器的…

选购电子实验记录本ELN时,怎么评估?

企业全面数字化的趋势愈发明显&#xff0c;实验室数字化也从“要不要实施”&#xff0c;变为“如何开始实施”、“如何避免实施失败”的紧迫状态。不实施数字化的企业&#xff0c;将迅速落后于同类企业&#xff0c;逐渐被市场淘汰。 其中&#xff0c;电子实验记录本&#xff0…

前端开发工程中如何利用DeepSeek提升工作效率:实战案例与策略解析

目录 引言DeepSeek的核心功能与技术优势实际项目场景与问题分析 3.1 电商网站性能优化3.2 企业级管理系统代码质量提升3.3 跨端应用开发效率优化DeepSeek解决问题的策略与手段 4.1 代码智能分析与重构4.2 性能瓶颈定位与优化建议4.3 团队协作与知识沉淀代码样例与操作流程数据驱…

Linux探秘坊-------7.进程概念

1.进程概念 1.冯诺依曼体系结构 输⼊单元&#xff1a;包括键盘,⿏标&#xff0c;扫描仪,写板等中央处理器(CPU)&#xff1a;含有运算器和控制器等输出单元&#xff1a;显⽰器&#xff0c;打印机等这⾥的存储器指的是内存 ⼀句话&#xff0c;所有设备都 只能直接和内存打交道。…

docker 部署nginx,nginx 504

遇到问题 原因&#xff1a; 因为用的docker 部署nginx, docker 应用与服务之间的端口未开放&#xff0c;导致访问不到服务。

MySQL 联合索引的最左匹配原则

环境&#xff1a;MySQL 版本&#xff1a;8.0.27 执行计划基础知识 possible_keys&#xff1a;可能用到的索引 key&#xff1a;实际用到的索引 type: ref&#xff1a;当通过普通的二级索引列与常量进行等值匹配的方式 询某个表时const&#xff1a;当我们根据主键或者唯一得…

GB300加速推进,RTX 50显卡芯片量产延后,NVIDIA面临新的挑战与机遇

野村分析师Anne Lee在2月12日的报告中表示&#xff0c;2025年全球服务器营收将同比增长46%&#xff0c;2026年增长22%。其中&#xff0c;AI服务器营收预计在2025年和2026年分别增长75%和31%。这些预测与近期美国主要云服务提供商(CSP)上调的资本支出指引基本一致。 GB300加速推…

J6 X8B/X3C切换HDR各帧图像

1、OV手册上的切换命令 寄存器为Ox5074 各帧切换&#xff1a; 2、地平线control tool实现切换命令 默认HDR模式出图&#xff1a; HCG出图&#xff1a; LCG出图 SPD出图 VS出图

游戏引擎学习第101天

回顾当前情况 昨天的进度基本上完成了所有内容&#xff0c;但我们还没有进行调试。虽然我们在运行时做的事情大致上是对的&#xff0c;但还是存在一些可能或者确定的bug。正如昨天最后提到的&#xff0c;既然现在时间晚了&#xff0c;就不太适合开始调试&#xff0c;所以今天我…