基础训练营复习4_嘘嘘喵

嘘嘘喵 嘘嘘喵 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区

10.16

学习内容

1、foreach

for(Type element : array){
    do();
}

其效果为:对于 array 数组中的每一个 element ,执行 do() 方法。

 

工作内容

1、树结构遍历

package com.xxm.exam1;

import java.util.ArrayList;
import java.util.List;

public class task29 {
    public static void main(String[] args) {
        /*示例
        Node<String> root = new Node<>("root");
        //定义根节点
        Node<String> node1 = root.addChild(new Node<String>("node 1"));
        //增加一个结子节点,其父节点是root
        */
        Node<String> node1 = new Node<String>("中国");
        Node<String> node2 = node1.addChild(new Node<String>("北京市"));
        Node<String> node3 = node2.addChild(new Node<String>("朝阳区"));
        Node<String> node4 = node2.addChild(new Node<String>("海淀区"));
        Node<String> node5 = node1.addChild(new Node<String>("湖北省"));
        Node<String> node6 = node5.addChild(new Node<String>("武汉市"));
        Node<String> node7 = node6.addChild(new Node<String>("江汉区"));
        Node<String> node8 = node6.addChild(new Node<String>("江夏区"));
        Node<String> node9 = node1.addChild(new Node<String>("湖南省"));
        Node<String> node10 = node9.addChild(new Node<String>("长沙市"));
        Node<String> node11 = node9.addChild(new Node<String>("郴州市"));
        Node<String> node12 = new Node<String>("美国");
        Node<String> node13 = node12.addChild(new Node<String>("加利福尼亚州"));
        Node<String> node14 = node12.addChild(new Node<String>("得克萨斯州"));
        printTree(node1, " ", "·");
        printTree(node12, " ", "·");
    }

    public static class Node<T> {
        //定义Note类
        private T data = null;
        //定义并初始化
        private List<Node<T>> children = new ArrayList<>();
        //声明并初始化Node类的子节点

        private Node<T> parent = null;
        //声明并初始化Node类的父节点

        public Node(T data) {
            this.data = data;
        }
        //定义Node类数据的设置方法

        public Node<T> addChild(Node<T> child) {
            child.setParent(this);
            this.children.add(child);
            return child;
        }
        //定义增加单个子节点的方法

        public void addChildren(List<Node<T>> children) {
            children.forEach(each -> each.setParent(this));
            this.children.addAll(children);
        }
        //定义增加多个子节点的方法

        public Node<T> getParent() {
            return parent;
        }
        //定义获取父节点的方法

        public T getData() {
            return data;
        }
        //定义获取特定节点数据的方法


        public void setData(T data) {
            this.data = data;
        }
        //定义当前节点数据的设置方法

        public void setParent(Node<T> parent) {
            this.parent = parent;
        }
        //定义设置父节点的方法

        public void setChildren(List<Node<T>> children) {
            this.children = children;
        }
        //定义设置多个子节点的方法

        public List<Node<T>> getChildren() {
            return children;
        }
        //定义获取多个子节点的方法
    }   //至此,树型结构构造完毕

    public static <T> void printTree(Node<T> node, String appender, String dot) {
        System.out.println(appender + dot + node.getData());
        node.getChildren().forEach(each -> printTree(each, appender + appender, dot));
    }
}

2、java的逻辑与算法

把任务4里的递归、分支、顺序查找、二分查找、插值查找、快速排序自己在java里又实现了一遍。

 

10.18

学习内容

finalize() 方法

Java 虚拟机在销毁对象之前调用 finalize() 方法。

该方法用于释放系统资源或执行其他清理任务。

Object 类包含 finalize() 方法,这意味着所有其他类都是如此(因为所有 Java 类都是从 Object 类派生的)。你可以直接在类中实现自己的 finalize() 方法。

finalize方法往往不会被调用,更像是一个备份。

static 变量和方法

类的每个实例只能存在 static 变量的一个副本,并且必须使用类名访问该副本

类的方法分为两种:

实例方法是在对象上调用的,并且可以访问该对象的数据。

  • static 方法没有该访问权限,因为它们根本没有对象引用。
  • static方法可以引用类的 static 变量和其他 static 方法。
  • static 方法无法处理非 static 方法或非 static 变量

static方法的优点:

  1. 不必传递对象引用即可使用 static 方法和变量
  2. 有时需要只有一个变量副本
  3. 有时你需要先调用一个方法,然后才能创建对象

工作内容

基础训练营试卷错题

1、在centos中,rpm -q命令的作用是___

答:查询软件包是否安装。

 

2、TCP的三次握手

第一次握手:建立连接时,客户端发送syn包到服务器,并进入SYN_SENT状态,等待服务器确认。

SYN:同步序列编号(Synchronize Sequence Numbers)。

第二次握手:服务器收到syn包,必须确认客户端的SYN,同时自己也发送一个SYN包,即SYN+ACK包,此时服务器进入SYN_RECV状态。

第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK,此包发送完毕,客户端和服务器进入ESTABLISHED(TCP连接成功)状态,完成三次握手。

 

3、HTML5的应用程序缓存manifest文件包括哪几个部分?

CACHE MANIFEST - 文件申明。

CACHE - 需要缓存的文件。

NETWORK -  不被缓存的文件。

FALLBACK - 制定无法访问文件时的文件。

 

4、输入框的图标可以使用什么属性展现出来?

通过background属性。

 

5、Window.document和Document有什么区别

简单来说,Document是Window的一个对象属性。是 Window 对象的一部分,可通过 window.document 属性对其进行访问。

Window 对象表示浏览器中打开的窗口。

如果文档包含框架(frame 或 iframe 标签),浏览器会为 HTML 文档创建一个 window 对象,并为每个框架创建一个额外的 window 对象。

 

6、怎么显示文档对象中所有cookie的键值对

<script>

document.write(document.cookie);

<\script>

 

7、如何输出文件增删改的统计数据

git status

git log 

git blame <file>

 

8、如何撤销未push的本地上一次commit

git reset <commit id>

注:commit it 可以在 git log 指令中查看

3个参数:

–mixed 修改本地仓库、暂存区里面的数据为commitId对应快照里的数据,是默认参数,可省略。 暂存区的数据会被快照中的数据覆盖

–soft 修改本地仓库里面的数据为commitId对应快照的数据。(仅改变指向快照的指针指向)

–hard 修改本地仓库、暂存区、工作区里面的数据为commitId对应快照的内数据。

 

java任务

java学习笔记13_嘘嘘喵的博客-CSDN博客

 

...全文

相关推荐

2026安卓开发从零实战指南:环境搭建、核心基础与避坑干货(适配新版Android_Studio).pdf

2026安卓开发从零实战指南:环境搭建、核心基础与避坑干货(适配新版Android_Studio).pdf

彼岸交流群

如何实现科研成果转化率的有效提升与技术市场精准对接?.docx

如何实现科研成果转化率的有效提升与技术市场精准对接?

BIZKEEN

基于PID控制的ABS汽车防抱死制动系统、车轮滑移率+最优滑移率Carsim和Simulink联合仿真(带参考文献)

内容概要:本文档系统研究了基于PID控制的ABS汽车防抱死制动系统,聚焦于车轮滑移率与最优滑移率的动态控制问题,采用Carsim与Simulink联合仿真平台构建高精度车辆动力学模型与控制系统。研究详细阐述了ABS的工作机理,通过设计PID控制器实时调节制动压力,确保车轮滑移率稳定在最优区间,从而最大化轮胎与路面间的摩擦力,提升制动效能与行车安全性。文档涵盖了完整的建模流程、控制策略设计、仿真验证方法及参数整定过程,并提供了详实的参考文献支持,增强了研究的可复现性与工程应用价值。; 适合人群:具备车辆工程、自动化或控制理论等相关专业背景,熟悉MATLAB/Simulink与Carsim仿真环境的研究生、科研人员及汽车行业技术研发工程师。; 使用场景及目标:①用于ABS控制算法的教学讲解与科研实验;②支撑车辆制动性能优化、主动安全系统开发等实际工程应用;③为相关学术论文撰写、课题复现与技术创新提供理论依据与技术参考。; 阅读建议:建议读者结合所提供的仿真模型与参考文献,逐步运行并调试代码,重点关注滑移率计算逻辑、PID参数整定方法及联合仿真的数据交互机制,同时可尝试引入模糊控制、自适应控制等先进算法进行对比分析,以深入掌握ABS系统的控制精髓与优化路径。

荔枝科研社

高校如何利用技术转移数据分析优化成果转化路径?.docx

科易网基于40亿+科创知识图谱数据库,深度探索AI技术在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,研究科技创新领域的AI+数智化解决方案,推动科技创新与产业创新智能化发展。

BIZKEEN

MATLAB采用改进的PSO实现AUV三维路径规划,配备自适应惯性权重、距离演化因子和跳出机制。.zip

MATLAB采用改进的PSO实现AUV三维路径规划,配备自适应惯性权重、距离演化因子和跳出机制。.zip

海神之光
评论
收藏 已收藏
分享
返回顶部
嘘嘘喵
CSDN实训 110 成员 353 内容