JAVA根本:单位测试;注解;摆列;网络编程 (学习条记)

[复制链接]
发表于 2025-12-30 17:58:39 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
单位测试


  •            操纵步调:
       a.导包import org.junit;
       b.三个注解  @Test @Before @After
       c.点击@Test 运行就可以了
   用在不必要控制台输入的情境下:javaweb,框架项目,微服务项目 供开辟职员自己做测试。
  1. package com.page.test;
  2. import com.page.entry.DVD;
  3. import com.page.service.DvdService;
  4. import com.page.service.impl.DvdServiceImpl;
  5. import com.page.controller.DvdController;
  6. import org.junit.After;
  7. import org.junit.Before;
  8. import org.junit.Test;
  9. @SuppressWarnings("all")
  10. public class DVDTest {
  11.     @Test
  12.     public void test1(){
  13.         DvdController controller=new DvdController();
  14.         controller.menu();
  15.     }
  16.     DvdService service=null;
  17.     @Before
  18.     public void  testB(){
  19.         service=new DvdServiceImpl();
  20.     }
  21.     @Test
  22.     public void test2(){
  23.         int i= service.getDataCount(new DVD());
  24.         System.out.println("一共有"+i+"条数据");
  25.     }
  26.     @Test
  27.     public void test3(){
  28.         int i= service.getDataCount(new DVD());
  29.         System.out.println("一共有"+i+"条数据");
  30.     }
  31.     @After
  32.     public  void testA(){
  33.         System.out.println("测试结束!");
  34.     }
  35. }
复制代码
注解

一,注解的分类

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可以并列多个

摆列

一,创建
  1. package page.enumdemo;
  2. public enum DVDType {
  3.     恐怖,搞笑,穿越,古装
  4. }
复制代码
二,使用
  1. package page.test;
  2. import page.entry.DVD;
  3. import page.enumdemo.DVDType;
  4. import java.util.Scanner;
  5. public class EnumTest {
  6.     public static void main(String[] args) {
  7.         //赋值,取值,转换,枚举
  8.         DVD dvd=new DVD();
  9.         //1,直接赋值
  10.         dvd.setDvdType(DVDType.古装);
  11.         //2,控制台输入赋值
  12.         Scanner input=new Scanner(System.in);
  13.         String s=input.next();
  14.         DVDType dvdType=DVDType.valueOf(s);
  15.         dvd.setDvdType(dvdType);
  16.         System.out.println(dvd.getDvdType());
  17.     }
  18. }
复制代码
三,Enum类常用方法
  1. package com.msb.enum03;
  2. public class TestSeason {
  3.     //这是一个main方法,是程序的入口:
  4.     public static void main(String[] args) {
  5.         //用enum关键字创建的Season枚举类上面的父类是:java.lang.Enum,常用方法子类Season可以直接拿过来使用:
  6.         //toString();--->获取对象的名字
  7.         Season autumn = Season.AUTUMN;
  8.         System.out.println(autumn/*.toString()*/);//AUTUMN
  9.         System.out.println("--------------------");
  10.         //values:返回枚举类对象的数组
  11.         Season[] values = Season.values();
  12.         for(Season s:values){
  13.             System.out.println(s/*.toString()*/);
  14.         }
  15.         System.out.println("--------------------");
  16.         //valueOf:通过对象名字获取这个枚举对象
  17.         //注意:对象的名字必须传正确,否则抛出异常
  18.         Season autumn1 = Season.valueOf("AUTUMN");
  19.         System.out.println(autumn1);
  20.     }
  21. }
复制代码
网络编程



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

回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表