当前位置: 首页 > news >正文

JAVA基础:单元测试;注解;枚举;网络编程 (学习笔记)

单元测试

  •    操作步骤:

       a.导包import org.junit;
       b.三个注解  @Test @Before @After
       c.点击@Test 运行就可以了
   用在不需要控制台输入的情境下:javaweb,框架项目,微服务项目 供开发人员自己做测试。

package com.page.test;import com.page.entry.DVD;
import com.page.service.DvdService;
import com.page.service.impl.DvdServiceImpl;
import com.page.controller.DvdController;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
@SuppressWarnings("all")
public class DVDTest {@Testpublic void test1(){DvdController controller=new DvdController();controller.menu();}DvdService service=null;@Beforepublic void  testB(){service=new DvdServiceImpl();}@Testpublic void test2(){int i= service.getDataCount(new DVD());System.out.println("一共有"+i+"条数据");}@Testpublic void test3(){int i= service.getDataCount(new DVD());System.out.println("一共有"+i+"条数据");}@Afterpublic  void testA(){System.out.println("测试结束!");}}

注解

一,注解的分类

1,jdk中的常用注解:

                  @SuppressWarnings("all")   抑制警告
                  @Deprecated  标记过时
                  @Override    表示重写方法

2,单元测试里的注解:

                @Test
                @Before
                @After

3,javadao注释里的注解;

4,框架、javaweb里的注解。

5,元注解:修饰注解的注解就是元注解。

其中注意:

Ø @param @return和@exception这三个标记都是只用于方法的。

Ø @param的格式要求: @param 形参名 形参类型 形参说明

Ø @return的格式要求: @return 返回值类型返回值说明,如果方法的返回值类型是void就不能写

Ø @exception的格式要求: @exception 异常类型异常说明

Ø @param和@exception可以并列多个

枚举

一,创建

package page.enumdemo;public enum DVDType {恐怖,搞笑,穿越,古装
}

二,使用

package page.test;import page.entry.DVD;
import page.enumdemo.DVDType;import java.util.Scanner;public class EnumTest {public static void main(String[] args) {//赋值,取值,转换,枚举DVD dvd=new DVD();//1,直接赋值dvd.setDvdType(DVDType.古装);//2,控制台输入赋值Scanner input=new Scanner(System.in);String s=input.next();DVDType dvdType=DVDType.valueOf(s);dvd.setDvdType(dvdType);System.out.println(dvd.getDvdType());}
}

三,Enum类常用方法

package com.msb.enum03;public class TestSeason {//这是一个main方法,是程序的入口:public static void main(String[] args) {//用enum关键字创建的Season枚举类上面的父类是:java.lang.Enum,常用方法子类Season可以直接拿过来使用://toString();--->获取对象的名字Season autumn = Season.AUTUMN;System.out.println(autumn/*.toString()*/);//AUTUMNSystem.out.println("--------------------");//values:返回枚举类对象的数组Season[] values = Season.values();for(Season s:values){System.out.println(s/*.toString()*/);}System.out.println("--------------------");//valueOf:通过对象名字获取这个枚举对象//注意:对象的名字必须传正确,否则抛出异常Season autumn1 = Season.valueOf("AUTUMN");System.out.println(autumn1);}
}

网络编程

  • 客户端
    package page.socketdemo;/*** 客户端:发送信息给服务器  问  “中午吃啥了?”*/import java.io.*;
    import java.net.Socket;
    import java.util.Scanner;public class Asocket {public static void main(String[] args) throws IOException {while (true) {Scanner input = new Scanner(System.in);//设置一个socket对象,锁定服务器的IP和端口Socket socket = new Socket("127.0.0.1", 8888);//2.获得输出节点流OutputStream outputStream = socket.getOutputStream();DataOutputStream dos = new DataOutputStream(outputStream);//3.写入数据/*   dos.writeUTF("中午吃啥了?");*/System.out.println("请输入你要发送的信息:");dos.writeUTF(input.next());//4.接受服务器端回复的消息InputStream inputStream = socket.getInputStream();DataInputStream dis = new DataInputStream(inputStream);System.out.println("服务器回复:" + dis.readUTF());//4.关闭流资源dis.close();dos.close();}}
    }
  • 服务器端
    package page.socketdemo;import java.io.*;
    import java.net.ServerSocket;
    import java.net.Socket;
    import java.util.Scanner;/*** 服务器端*/
    public class SSocket {public static void main(String[] args) throws IOException {Scanner input = new Scanner(System.in);ServerSocket ss = new ServerSocket(8888);while (true) {System.out.println("服务器已启动!");//通过系统类,一直关注一个端口号,判断是否有客户端发送请求//2.接收发送过来的请求:Socket socket = ss.accept();//accept();---可以阻塞线程//3.获得输入流InputStream inputStream = socket.getInputStream();DataInputStream dis = new DataInputStream(inputStream);//4.读出String s = dis.readUTF();System.out.println("客户端发来了的消息:" + s);//5.回复OutputStream outputStream = socket.getOutputStream();DataOutputStream dos = new DataOutputStream(outputStream);System.out.println("请回复客户:");dos.writeUTF(input.next());//5.关闭资源dos.close();dis.close();}}
    }
    

    cmd

相关文章:

JAVA基础:单元测试;注解;枚举;网络编程 (学习笔记)

单元测试 操作步骤: a.导包import org.junit; b.三个注解 Test Before After c.点击Test 运行就可以了 用在不需要控制台输入的情境下:javaweb,框架项目,微服务项目 供开发人员自己做测试。 package com.page…...

Meta 上周宣布正式开源小型语言模型 MobileLLM 系列

在 7 月发布之后,Meta 上周宣布正式开源能够在智能手机上运行的小型语言模型 MobileLLM 系列。 Meta 在四个月前发布了这两个参数量小于 10 亿的语言模型 MobileLLM 125M 及 MobileLLM 350M。如今,Meta 又开发出了更大参数量的模型版本,包括…...

安全篇(1)判断安全固件

判断安全固件的方法 一、通过串口开机打印 改方法适用Android与Tina 1.开机打印为SBOOT为安全 [289]HELLO! SBOOT is starting! 2.开机打印boot0为非安全 [88]BOOT0 commit : 1cbb5ea8b3 二、通过读数据 1.getprop | grep verifiedbootstate 这条命令的输出表示设备的…...

ArcGIS005:ArcMap常用操作101-150例动图演示

摘要:本文涵盖了GIS软件操作的多方面内容,包括地图文档的新建、打开、保存及版本兼容性处理;错误与警告的查阅及帮助文档的使用技巧;地图打印比例尺的调整与地图信息的完善;图层操作的撤销与恢复,界面元素的…...

如何用ChatGPT结合Python处理遥感数据

在科技飞速发展的时代,遥感数据的精准分析已经成为推动各行业智能决策的关键工具。从无人机监测农田到卫星数据支持气候研究,空天地遥感数据正以前所未有的方式为科研和商业带来深刻变革。然而,对于许多专业人士而言,如何高效地处…...

matlab 质心重合法实现点云配准

目录 一、算法原理1、原理概述2、参考文献二、代码实现三、结果展示1、初始位置2、配准结果本文由CSDN点云侠原创,原文链接,首发于:2024年11月5日。 一、算法原理 1、原理概述 质心重合法是将源点云 P P P...

ubuntu双屏只显示一个屏幕另一个黑屏

简洁的结论: 系统环境 ubuntu22.04 nvidia-535解决方案 删除/etc/X11/xorg.conf 文件 记录一下折腾大半天的问题。 ubuntu系统是22.04,之前使用的时候更新驱动导致桌面崩溃,重新安装桌面安装不上,请IT帮忙,IT一番操作过后也表示…...

小菜家教平台:基于SpringBoot+Vue打造一站式学习管理系统

前言 现在已经学习了很多与Java相关的知识,但是迟迟没有进行一个完整的实践(之前这个项目开发到一半,很多东西没学搁置了,同时原先的项目中也有很多的问题),所以现在准备从零开始做一个基于SpringBootVue的…...

网络自动化03:简单解释send_config_set方法并举例

目录 拓扑图设备信息 netmiko涉及方法send_config_set()方法的简单示例代码输出结果代码解释导入模块配置信息config_device_interface_description 函数主程序块总结 send_config_set方法参数:1. enter_config_mode2. config_commands3. enter_config_mode4. error…...

跳表原理笔记

课程地址 跳表是一种基于随机化的有序数据结构,它提出是为了赋予有序单链表以 O(logn) 的快速查找和插入的能力 创建 首先在头部创建一个 sentinel 节点,然后在 L1 层采用“抛硬币”的方式来决定 L0 层的指针是否增长到 L1 层 例如上图中,L…...

计算机毕业设计Hadoop+PySpark深度学习游戏推荐系统 游戏可视化 游戏数据分析 游戏爬虫 Scrapy 机器学习 人工智能 大数据毕设

温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 作者简介:Java领…...

AI开发-三方库-torch-torchvision

1 需求 数据集:torchvision.datasets torchvision.datasets.MNIST数据变换:torchvision.transforms torchvision.transforms.Composetorchvision.transforms.ToTensortorchvision.transforms.Normalize模型:torchvision.models可视化工具&…...

解析 MySQL 数据库容量统计、存储限制与优化技巧

管理 MySQL 数据库时,了解数据库中的数据量和存储占用情况是非常重要的,尤其是在面对大规模数据时。无论是为了优化数据库性能,还是为了进行容量规划,准确地统计数据库的容量可以帮助我们做出更好的决策。mysql的客户端工具是Navi…...

智能工厂的软件设计 思维进阶与数学程序

本文要点 讨论 “智能工厂的软件设计”中的“数学程序”。 这里 “数学程序” 是指能“格物致知”来理解“相续”一词。 完整的表述是: 思想素养提升的 思维进阶法(三种 数学程序 : 格物致知 )之思维导图: 二叉树及其…...

技术速递|GitHub Copilot upgrade assistant for Java 技术预览发布!

作者:Nick Zhu - Senior Program Manager 排版:Alan Wang 随着人工智能和大型语言模型(LLMs)的不断发展,Agent(“智能代理”)和智能代理化工作流程正在迅速成为AI领域的下一个前沿。这些自主系统…...

淘宝有哪些API是用来获取商品列表的?(商品id列表)

淘宝商品详情接口item_get是通过商品id或者商品链接来获取商品详情数据的,但是不少客户是没有商品id的,这时需要通过接口来拿到商品id。 可以获取商品id的API有: item_search 通过关键字搜索商品列表 item_search_shop 获取店铺所有商品列…...

D59【python 接口自动化学习】- python基础之异常

day59 捕获异常常见问题 学习日期:20241105 学习目标:异常 -- 75 避坑指南:编写捕获异常程序时经常出现的问题 学习笔记: 捕获位置设置不当 设置范围不当 捕获处理设置不当 嵌套try-except语法错误 总结 位置,范围…...

解决 Spring 异步处理中的 JDK 动态代理问题及相关错误分析

解决 Spring 异步处理中的 JDK 动态代理问题及相关错误分析 遇到的问题: 在使用 Spring 的 Async 注解开启异步处理时,遇到以下错误: The bean ServiceImplChannel could not be injected as a com.wn.order.pay.recharge.controller.Serv…...

从xss到任意文件读取

xss一直是一种非常常见且具有威胁性的攻击方式。然而,除了可能导致用户受到恶意脚本的攻击外,xss在特定条件下还会造成ssrf和文件读取,本文主要讲述在一次漏洞挖掘过程中从xss到文件读取的过程,以及其造成的成因。 0x01 前言 xss一…...

nuiapp vue3 uni-ui uni.uploadFile 图片上传

<div style"position: relative;margin-top: 0.8em;"> <div style"position: absolute;left: 1.5em;top: 2em;">施工图片</div> <div style"position: absolute; left: 7em;top: 0em;right: 0em;bottom…...

AI检测率太高论文过不了?这4个降AI率平台2026年别再错过了

随着AI技术在学术领域的广泛应用&#xff0c;论文中的AI痕迹越来越容易被检测系统识别。如何有效降低AIGC率、去除AI痕迹&#xff0c;已成为众多学者和学生关注的焦点。依托权威检测平台数据、高校实测结果及用户真实反馈&#xff0c;本文将深入解析当前最值得尝试的降AI率工具…...

14000华夏之光永存:开源:华为五大全栈硬核技术揭榜课题完整梳理(预刊抽取篇)

开源&#xff1a;华为五大全栈硬核技术揭榜课题完整梳理&#xff08;预刊抽取篇&#xff09; 摘要 本文完整收录黄大年茶思屋珠峰会战第八期5项前沿技术揭榜难题&#xff0c;原样保留技术背景、技术挑战、现有方案、现存缺陷与量化技术诉求&#xff0c;不做内容删减与篡改。本文…...

HarmonyOS 鸿蒙PC平台三方库移植:使用 vcpkg 移植 libzen(ZenLib)

网罗开发&#xff08;小红书、快手、视频号同名&#xff09;大家好&#xff0c;我是 展菲&#xff0c;目前在上市企业从事人工智能项目研发管理工作&#xff0c;平时热衷于分享各种编程领域的软硬技能知识以及前沿技术&#xff0c;包括iOS、前端、Harmony OS、Java、Python等方…...

从收音机到手机充电器:聊聊二极管等效电路在经典电路里的那些‘隐身’角色

从矿石收音机到快充芯片&#xff1a;二极管的七十二变与现代电子革命 清晨的阳光透过老式木窗洒在桌面上&#xff0c;一位无线电爱好者正小心翼翼地调整着矿石收音机的触须。这个看似简单的装置&#xff0c;却藏着电子世界最精妙的秘密——检波二极管。而在城市的另一端&#x…...

初创团队如何利用Taotoken统一管理多项目的AI模型调用

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 初创团队如何利用Taotoken统一管理多项目的AI模型调用 对于初创团队而言&#xff0c;同时推进多个小项目是常态。每个项目可能都需…...

洛雪音乐音源项目完整指南:免费获取全网高品质音乐的终极解决方案

洛雪音乐音源项目完整指南&#xff1a;免费获取全网高品质音乐的终极解决方案 【免费下载链接】lxmusic- lxmusic(洛雪音乐)全网最新最全音源 项目地址: https://gitcode.com/gh_mirrors/lx/lxmusic- 洛雪音乐音源项目是一个专为洛雪音乐软件设计的开源音源集合&#xf…...

高效网络资源捕获工具res-downloader完全指南:从入门到精通

高效网络资源捕获工具res-downloader完全指南&#xff1a;从入门到精通 【免费下载链接】res-downloader 视频号、小程序、抖音、快手、小红书、直播流、m3u8、酷狗、QQ音乐等常见网络资源下载! 项目地址: https://gitcode.com/GitHub_Trending/re/res-downloader 你是否…...

AI Agent在制造业的隐秘革命(产线故障预测Agent首次公开技术栈)

更多请点击&#xff1a; https://kaifayun.com 第一章&#xff1a;AI Agent在制造业的隐秘革命&#xff08;产线故障预测Agent首次公开技术栈&#xff09; 当振动传感器每秒回传8,192点时序数据、PLC日志以毫秒级时间戳持续写入边缘缓存&#xff0c;传统阈值告警系统正悄然失…...

论文初稿被批太水?,有哪些真正亲测好用的的降AI率软件推荐?

论文初稿被批太水&#xff1f;关键要选对降AIGC率、去AI痕迹、降查重的工具&#xff0c;语义优化 学术润色 AI痕迹清除是核心。免费与付费工具结合使用更高效&#xff0c;既能控制成本又能提升质量。下面按中文、英文、免费 / 付费分类推荐&#xff0c;附实测效果与适用场景。…...

【QMT 量化实战】股市 “高开低走“ 是陷阱还是机会?(下)附完整 Python 代码

摘要 本文为《股市 "高开低走" 是陷阱还是机会&#xff1f;》系列下篇&#xff0c;提供基于QMT 量化交易平台的完整 "高开低走" 策略 Python 实现代码。包含 Xtquant 初始化、全局参数配置、数据获取、趋势判断、周期计算及结果输出等全流程代码&#xff…...