3.28总结

1.java学习记录

1.方法的重载

重载换而言之其实就是函数名不变,但是其中的参数需要改变,可以三个方面改变(参数类型,参数顺序,参数个数这三个方面入手,这样可以运用的)

但是:注意访问修饰符或返回值设置不同,而参数设置相同时,无法构成方法的重载。

public class Test {public Test(){System.out.println("无参构造方法");}public Test(int a){System.out.println("单参构造方法 a:"+a);}public Test(int a, String b){System.out.println("无参构造方法 a:"+a +"b:"+b);}public static void main(String[] args) {new Test();new Test(1);new Test(1,"1");}
}

2.封装

4.1 什么是封装
        当我们需要安全地访问对象时,例如限制给对象赋值的范围(避免数据类型的不同或者数据范围超出预计),我们就需要使用封装技术。
        封装就是将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法(如set或者get)来实现对隐藏信息的操作和访问。

方法封装的主要优点包括:

代码抽象: 将复杂的操作和算法封装在方法中,使得调用者只需要关注方法的用途,而无需关心具体的实现细节。

隐藏实现细节: 封装隐藏了方法的具体实现,从而防止外部代码直接访问或修改内部逻辑,提高了信息隐藏和安全性。

提高可读性: 使用有意义的方法名和参数,使代码更易于理解和阅读,降低了理解和维护代码的难度。

提高可维护性: 修改方法的实现只需要在方法内部进行,不影响外部调用者的代码,从而减少了代码变更的影响范围。

代码重用: 封装的方法可以在不同的地方重复使用,避免了代码的重复编写,提高了代码的重用性。

用封装的方法,计算圆的面积

class Circle {private double radius;public Circle(double r) {radius = r;}// 封装的方法,计算圆的面积public double calculateArea() {return Math.PI * radius * radius;}
}public class Main {public static void main(String[] args) {Circle circle = new Circle(5.0);// 调用封装的方法,计算圆的面积double area = circle.calculateArea();System.out.println("Circle Area: " + area);}
}

2.每日一题

最短路计数

#include<bits/stdc++.h>
using namespace std;
int n,m,cnt;
long long dis[1000006];
int vis[1000005];
int head[1000005]; 
long long ans[1000005];
struct edge
{int to;int w;int next;
}e[5000005];
struct node
{int dis,pos;bool operator <(const node &a)const{return a.dis>dis;}
};priority_queue <node> q;void addedge(int x,int y,int z)
{cnt++;e[cnt].to=y;e[cnt].w=z;e[cnt].next=head[x];head[x]=cnt;
};int main()
{cin>>n>>m;for(int i=1;i<=n;i++)dis[i]=0x3f3f3f3f;dis[1]=0;ans[1]=1;for(int i=1;i<=m;i++){int x,y;cin>>x>>y;addedge(x,y,1);addedge(y,x,1);}q.push((node){0-dis[1],1});while(!q.empty()){node tmp=q.top();q.pop();int pos=tmp.pos;int d=tmp.dis;if(vis[pos]==1)continue;vis[pos]==1;for(int i=head[pos];i!=0;i=e[i].next){if(dis[e[i].to]>dis[pos]+e[i].w){dis[e[i].to]=dis[pos]+e[i].w;ans[e[i].to]=ans[pos];q.push((node){0-dis[e[i].to],e[i].to});}else if(dis[e[i].to]==dis[pos]+e[i].w){ans[e[i].to]+=ans[pos];ans[e[i].to]%=100003;}}}for(int i=1;i<=n;i++){printf("%lld\n",ans[i]);}return 0;
}

 

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

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

相关文章

2024.3.21|华北水利水电大学江淮校区ACM社团训练赛

2024.3.21|华北水利水电大学江淮校区ACM社团训练赛 1.数字拆解 2.矩阵修改 3.因子数 4.回文数 5.中位数 心有猛虎&#xff0c;细嗅蔷薇。你好朋友&#xff0c;这里是锅巴的C\C学习笔记&#xff0c;常言道&#xff0c;不积跬步无以至千里&#xff0c;希望有朝一日我们积累的滴…

通俗易懂:如何通过JVM参数来调整内存大小?

调整Java虚拟机&#xff08;JVM&#xff09;的内存大小主要是为了优化应用程序性能&#xff0c;防止内存不足而导致的OutOfMemoryError异常。以下是一些关键的JVM参数用于调整内存大小&#xff1a; 1. 堆内存&#xff08;Heap Memory&#xff09; - -Xms&#xff1a;设置JVM的初…

【联邦学习】kubefate安装(docker-compose版)

概念介绍 联邦学习&#xff1a;&#xff08;待补充&#xff09; fate介绍&#xff1a;&#xff08;待补充&#xff09; kubefate介绍&#xff1a;分布式版fate 官网&#xff1a;https://fate.fedai.org/ github&#xff1a;https://github.com/FederatedAI/ 安装 背景 本文…

springboot+vue在idea上面的使用小结

1.在mac上面删除java的jdk方法&#xff1a; sudo rm -rfjdk的路径 sudo rm -rf /Users/like/Library/Java/JavaVirtualMachines/corretto-17.0.10/Contents/Home 2.查询 Mac的jdk版本和路径&#xff1a; /usr/libexec/java_home -V 3.mac上面查询和关闭idea的网页端口&…

快速上手Spring Cloud五:Spring Cloud与持续集成/持续部署(CI/CD)

快速上手Spring Cloud 一&#xff1a;Spring Cloud 简介 快速上手Spring Cloud 二&#xff1a;核心组件解析 快速上手Spring Cloud 三&#xff1a;API网关深入探索与实战应用 快速上手Spring Cloud 四&#xff1a;微服务治理与安全 快速上手Spring Cloud 五&#xff1a;Spring …

samba实现linux共享文件夹

一、samba安装 sudo apt install samba 二、配置Samba 编辑Samba配置文件sudo vi /etc/samba/smb.conf 在文件末尾添加以下内容&#xff0c;设置一个简单的共享目录&#xff08;替换path_to_share为实际的共享目录路径&#xff09;&#xff1a; [Share] path /path_to_sha…

鱼眼相机的测距流程及误差分析[像素坐标系到空间一点以及测距和误差分析]

由于最近在整理单目测距的内容&#xff0c;顺手也总结下鱼眼相机的测距流程和误差分析&#xff0c;如果有错误&#xff0c;还请不吝赐教。 参考链接: 鱼眼镜头的成像原理到畸变矫正&#xff08;完整版&#xff09; 相机模型总结&#xff08;针孔、鱼眼、全景&#xff09; 三维…

多模态系列-综述MM-LLMs: Recent Advances in MultiModal Large Language Models

Homepage:https://mm-llms.github.io/ Paper: https://arxiv.org/abs/2401.13601 1 摘要 在过去的一年中,多模态大型语言模型(MM-LLMs)取得了实质性的进展,通过高效的训练策略,增强了现成的语言模型,以支持多模态输入或输出。由此产生的模型不仅保留了语言模型的固有…

Unity照片墙简易圆形交互效果总结

还要很多可以优化的点地方&#xff0c;有兴趣的可以做 比如对象的销毁和生成可以做成对象池&#xff0c;走到最左边后再移动到最右边循环利用 分析过程文件&#xff0c;采用Blender&#xff0c;资源已上传&#xff0c;可以播放动画看效果&#xff0c;下面截个图&#xff1a; …

关系型数据库mysql(8)sql高级语句②

目录 一.子查询——Subquery 语法 环境准备 In——查询已知的值的数据记录 子查询——Insert 子查询——Update 子查询——Delete Not In——表示否定&#xff0c;不在子查询的结果集里 Exists——判断查询结果集是否为空 子查询——别名 ​编辑 二.视图 理论&a…

图论之路径条数专题

一直忙着金工实习蓝桥杯&#xff0c;好久没有看图论了&#xff0c;今天就小试几题享受下被虐的快感。 1.最短路拓扑 首先来几个结论&#xff1a; 1.最短路图没有环&#xff08;可以用反证法证明&#xff09; 2.dis[u]edge[u,v]dis[v]&#xff0c;那么u,v端点的边一定在最短路…

方差分析(ANOVA)

方差分析&#xff08;ANOVA&#xff0c;Analysis of Variance&#xff09;是一种统计方法&#xff0c;用于比较两个或多个组之间的平均数是否存在显著差异。其原理基于对总方差的分解&#xff0c;将总方差分解为组内方差和组间方差。通过比较组内方差和组间方差的大小&#xff…

selenium自动化测试

selenium自动化测试 1、Javaselenium环境搭建2、测试&#xff0c;打开任意网页3、selenium 常见的Api3.1元素定位findElement3.1.1 css 选择语法3.1.2 xpath 选择语法 1、Javaselenium环境搭建 下载chromedriver&#xff0c;版本要与Chrome浏览器版本一致。 下载之后将chro…

数据库【QSqlQueryaModel】

QSqlQueryModel Class 描述 QSqlQueryModel是用于执行SQL语句和遍历结果集的高级接口。它构建在较低级别的QSqlQuery之上&#xff0c;可用于为视图类&#xff08;如QTableView&#xff09;提供数据。例如 QSqlQueryModel *model new QSqlQueryModel;model->setQuery(&quo…

C++经典面试题目(九)

1、什么是组合&#xff1f;请举例说明如何在C中实现组合。 组合是一种面向对象编程中的概念&#xff0c;用于描述类之间的关系。它表示一个类包含另一个类的对象作为成员变量的情况。在组合中&#xff0c;一个类的对象可以包含其他类的对象&#xff0c;这种关系通常表现为“拥…

第P1周:实现mnist手写数字识别

>- **&#x1f368; 本文为[&#x1f517;365天深度学习训练营](https://mp.weixin.qq.com/s/0dvHCaOoFnW8SCp3JpzKxg) 中的学习记录博客** >- **&#x1f356; 原作者&#xff1a;[K同学啊 | 接辅导、项目定制](https://mtyjkh.blog.csdn.net/)** 目录 一、前言 二、我…

Docker版本:18.06.1安装

1、操作系统&#xff1a;CentOS 7.5以上 2、Docker版本&#xff1a;18.06.1 1、解压 tar -xvf docker-18.06.1-ce.tgz2、将解压出来的docker文件内容移动到 /usr/bin/ 目录下 cp docker/* /usr/bin/3、将docker注册为service vim /etc/systemd/system/docker.service将下列…

vant checkbox 复选框 样式改写

修改前 修改后 基于 vant&#xff1a; 4.8.3 unocss: 0.53.4 <van-checkbox-group v-model"query.zczb" shape"square" class"text-16 w-100% flex flex-wrap"><template v-for"item in registerCapitalOption"><v…

LeetCode 27 移除元素

给你一个数组 nums 和一个值 val&#xff0c;你需要 原地 移除所有数值等于 val 的元素&#xff0c;并返回移除后数组的新长度。 不要使用额外的数组空间&#xff0c;你必须仅使用 O(1) 额外空间并 原地 修改输入数组。 元素的顺序可以改变。你不需要考虑数组中超出新长度后面…

“预防儿童烧烫伤”科普安全课堂走进嘉鱼县第一小学

为提高嘉鱼县儿童烧烫伤安全意识、隐患识别能力以及突发应急处置能力&#xff0c;3月26日下午&#xff0c;在中国社会福利基金会烧烫伤关爱公益基金、嘉鱼县妇女联合会、嘉鱼县教育局的支持下&#xff0c;嘉鱼县蒲公英社会工作服务中心走进嘉鱼县第一小学开展预防儿童烧烫伤科普…