DAY04Java方法

news/2025/2/21 20:11:52/文章来源:https://www.cnblogs.com/tyzjavastudy/p/18730074

Hello,World!

  1. 随便新建一个文件夹,存放代码

  2. 新建一个Java文件

    • 文件后缀名为.java
    • Hello.java
  3. 编写代码

    public class Hello{public static void main(String[] args){System.out.print("Hello,World");}
    }
    
  4. 编译javac java文件,会生成一个class文件

  5. 运行class文件,Java class文件

image-20250219142041679

可能遇到的问题

  1. 每个单词的大小不能出现问题,Java的大小写是敏感的
  2. 尽量使用英文
  3. 文件名和类名必须保证一致,并且首字母大写
  4. 符号使用中文

Java基础语法

注释

// 单行注释

/**/多行注释

标识符

关键字

起名不可与关键字重复

  • 所有的标识符都应该以字母(A-Z或者a-z),美元$,或者下划线(_)开始

  • 首字母之后可以说是任意字符组合

  • 不能使用关键字作为变量名或方法名

  • 标识符是大小写敏感的

    public class HelloWorld {public static void main(String[] args) {System.out.println("Hello,World!");String student ="tyz";String 认真学习的人 ="tyz";System.out.println(认真学习的人);}//单行注释,输出一个HelloWorld!//多行注释   /*   注释   *//*多行注释*///JavaDoc:文档注释   /**   *//*** @Description HelloWorld* @Author tyz*/
    }

数据类型

  • 强类型语言

    要求变量的使用严格符合规定,所有的变量都必须先定义后才能使用。

  • 弱类型语言

    Java的数据类型分为两大类

    基本类型

    • 数值类型

      • 整数类型:byte,short,int,long
      • 浮点类型:float,double
      • 字符类型:char
    • boolean类型:只要true和false两个

       //八大基本数据类型//整数int num1=10;  //最常用byte num2=20;short num3=30;long num4=40L;   //long类型要在数字后面加个L用于区分//小数:浮点型float num5=50.1F;//float类型要在数字后面加个F用于区分double num6=3.1415926;//字符char name ='田';//字符串,String不是关键字,是类//String namea="田耀宗";//布尔值:是非boolean flag=true;//boolean flag=false;
      

    引用类型(除基本类型以外)

  • 接口

  • 数组

数据类型扩展

 //整数拓展 进制, 二进制  十进制 八进制0 十六进制0x(0~9 A~F)//----------------------------------------//浮点数拓展? 银行业务怎么展示?钱//BigDecimal 数学工具类//-------------------------------------------//float  有限 离散 舍入误差 大约 接近但不等于//double//最好完全使用浮点数进行比较//最好完全使用浮点数进行比较//最好完全使用浮点数进行比较//最好完全使用浮点数进行比较float f=0.1f;//0.1double d=1.0/10;//0.1System.out.println(f==d);//输出为falseSystem.out.println(f);System.out.println(d);float d1=23333333333333333F;float d2=d1+1;System.out.println(d1==d2);//输出为true
//----------------------------------------------//字符拓展char c1='a';char c2='田';System.out.println( c1);System.out.println((int)c1);//强制换行System.out.println(c2);System.out.println((int)c2);//强制换行
//所有的字符本质还是数字//编码 Unicode 表:97=a 3000=田   占2字节//U000 UFFFchar c3='\u0061';System.out.println(c3);//a//------------------------//转义字符//\t   制表符//\n   换行//---------------//对象 从内存分析//----------------------------------//布尔值扩展boolean flag=true;if (flag==true){//新手//if(flag){}老手,两者意思相同

类型转换

int i = 128;byte b=(byte) i;//内存溢出//强制转换   (类名)变量名  高到低//自动转换    低到高double d=i;System.out.println(i);System.out.println(b);System.out.println(d);/*注意点1.不能对布尔值进行转换2.不能把对象类型转换为不相干的类型3.在把高容量转换为低容量的时候,强制转换4,在转换的时候可能存在内存溢出或者精度问题*/System.out.println((int)23.7);//输出为23//===================================char c='a';int f=c+1;System.out.println(f);//输出为98(a=97)System.out.println((char) f);//输出为b

类型转换的常见问题

public static void main(String[] args) {//操作比较大的数的时候,注意溢出问题//JDK7新特性,数字之间可以用下划线分割int money=10_0000_0000;int years=20;int total=money*years;//输出为-1474836480,计算的时候溢出了long total2=money*years;//输出还是为-14..,默认是int,转换之前已经存在问题long total3=money*((long)years);//先把一个数转换为long类型System.out.println(total);System.out.println(total2);System.out.println(total3);//输出为20亿
}

变量

数据类型 变量名 = 值;

  • 每个变量都必须声明其类型
  • 要素包括变量名,变量类型和作用域

注意

  • 每个变量都有类型,类型可以是基本类型,可以是引用类型。

  • 变量名必须是合法的标识符。

  • 变量声明必须是一条完整的语句,因此每一个声明都必须以分号结束。

变量的作用域

  • 类变量
  • 实例变量
  • 局部变量
public class Demo08变量作用域 {//类变量 staticstatic double salary=2500;//属性:变量//实例变量:从属于对象(这个类);如果不自行初始化,会变成这个类型的默认值//布尔值:默认是false//除了基本变量类型,其余的默认值都是null。String name;int age;//main方法public static void main(String[] args) {//局部变量;必须声明和初始化值,只在这一种方法中有效int i=10;System.out.println(i);//变量类型  变量名字=new Demo08();Demo08变量作用域 demo08变量作用域=new Demo08变量作用域();System.out.println(demo08变量作用域.age);System.out.println(demo08变量作用域.name);//类变量 staticSystem.out.println(salary);}//其他方法public void add(){}
}

变量的命名规范

  • 所有变量,方法,类名:见名知意
  • 类成员变量:首字母小写和驼峰原则:monthSalary除了第一个单词意外,后面的单词首字母大写(lastName)
  • 局部变量:首字母小写和驼峰原则
  • 常量:大写字母和下划线MAX_VALUE
  • 类名:首字母大写和驼峰原则:Man,GoodMan
  • 方法名:首字母小写和驼峰原则:run(),runRun()

常量

常量:初始化后不能在改变的值!不会变动的值。

final 常量名=值;

常量名一般使用大写字符

public class Demo09常量 {//修饰符,不存在先后顺序static final double PI=3.14;public static void main(String[] args) {}
}

运算符

算术运算符:+-*%(余),++,--

package operator;public class Demo01算数运算符 {public static void main(String[] args) {//二元运算符//ctrl+D复制当前行到下一行int a=10;int b=20;int c=30;int d=40;System.out.println(a+b);System.out.println(a-b);System.out.println(a*b);System.out.println(a/(double)b);long e=123123123123L;int f=123;short g=10;byte h=8;double i=3;System.out.println("===============================");System.out.println(e+f+g+h);//输出为LongSystem.out.println(f+g+h);//输出为intSystem.out.println(g+h);//输出为intSystem.out.println(i+g);}
}

赋值:=

关系:>,<,<=,>=,==(等于),!=(不等于),instanceof

package operator;public class Deom02关系运算符 {public static void main(String[] args) {//关系运算符返回结果int a=10;int b=20;int c=21;System.out.println(c%a);System.out.println(a>b);System.out.println(a<b);System.out.println(a==b);System.out.println(a!=b);}
}

逻辑:&&与 ||或, !非

package operator;public class Demo04逻辑运算符 {public static void main(String[] args) {boolean a=true;boolean b=false;System.out.println("a&&b:"+(a&&b));//falseSystem.out.println("a||b:"+(a||b));//trueSystem.out.println("!(a&&b):"+!(a&&b));//true//短路运算System.out.println("a&&b:"+(b&&a));//a不进行运算int c=5;boolean d=(c<4)&&(c++<4);//由于c<4是false,c++不进行运算System.out.println(d);//输出为falseSystem.out.println(c);//输出为5,没有自增}
}

位运算符

package operator;public class Demo05位运算 {public static void main(String[] args) {/*A  =0011 1100B  =0000 1101
------------------------------------------------A&B=0000 1100 两者相同输出1,不同0A/B=0011 1101 两者有1则输出1A^B=0011 0001 亦或:相同取0,不同取1~B =1111 0010 取反:与原来相反2*8=16   2*2*2*2效率极高!!!<<左移 相当于*2>>右移 相当于/2*/System.out.println(2<<3);}
}

条件

package operator;public class Demo07三元运算符 {public static void main(String[] args) {//?:       x? y : z//如果x==true,则结果为y,否则结果为zint score=80;String type=score<60?"不及格":"及格";System.out.println(type);//及格}
}

扩展赋值

package operator;public class Demo06扩展赋值运算符 {public static void main(String[] args) {int a=10;int b=20;a+=b;//a=a+ba-=b;//a=a-b//字符串连接符 +  如果出现String出现,那么后面其他操作数都转化为string类型进行链接System.out.println(a+b);//30System.out.println(""+a+b);//1020System.out.println(a+b+"");//30}
}

++a先自增

a++后自增

package operator;public class Deom03自增自减 {public static void main(String[] args) {//++自加   --自减  一元运算符int a=3;int b=a++;//执行这段代码后,先给b赋值,a再自增//a=a+1System.out.println(a);int c=++a;//执行这段代码前,先给a自增,再给c赋值System.out.println(a);System.out.println(b);System.out.println(c);//幂运算double pow = Math.pow(2, 3);System.out.println(pow);}
}

包机制

本质就是一个文件加

把语句的语法格式:

package pkg1[.pkg2[.pkg3...]];

  • 一般利用公司域名倒置作为包名;
  • 为了能够使用某一个包的成员,我们需要导入该包,使用import语句

import package1.[.package2...].(classname|*);

狂神说包机制

import com.kuang.bacs.*;导入这个包下所有的类!

JavaDOC

javadoc命令是用来生成自己API文档的

参数信息

  • @author 作者名
  • @version版本号
  • @since 指明需要最早使用的jdk版本
  • @param 参数名
  • @return返回值情况
  • @throws异常抛出情况

Java流程控制

Scanner

scanner就是用户与电脑(程序)互动

我们可以通过Scanner类来获取用户的输入

基本语法

Scanner s=new Scanner(System.in);

变量类型 变量名=scanner.Next变量类型;

scanner.close();

凡是属于IO流(输入输出流)的类如果不关闭会一直占用资源,要养成好习惯用完就关掉

通过Scanner类的next()与nextLine()方法获取输入的字符串

使用hasNext()与hasNextLine()判断是否还有输入的数据

next()

  • 一定要读取到有效字符后才可以结束输出

  • 遇到空格后面的字符将去掉

  • package scanner;import java.util.Scanner;public class Demo01 {public static void main(String[] args) {//创建一个扫描器对象,用于接收键盘数据Scanner scanner = new Scanner(System.in);System.out.println("使用next方式接收:");//判断用户有没有输入字符串if (scanner.hasNext()==true){//使用next方式接收用户的输入String str=scanner.next();//程序会等待用户输入完毕System.out.println("输出的内容为:"+str);}//凡是属于IO流(输入输出流)的类如果不关闭会一直占用资源,要养成好习惯用完就关掉scanner.close();}
    }

nextLine()

  • 可以有空白

  • package scanner;import java.util.Scanner;public class Demo02 {public static void main(String[] args) {//从键盘接收数据Scanner scanner = new Scanner(System.in);System.out.println("使用nextLine方式接收:");//判断是否还有输入if (scanner.hasNextLine()==true){String str = scanner.nextLine();//等待用户输入System.out.println("输出的内容为:"+str);}scanner.close();}
    }

    也可以不用if语句

    package scanner;import java.util.Scanner;public class Demo03 {public static void main(String[] args) {//从键盘接收数据Scanner scanner = new Scanner(System.in);System.out.println("请输入数据:");String str = scanner.nextLine();//等待用户输入System.out.println("输出的内容为:" + str);scanner.close();}
    }

    Scanner也可以有其他用法,可以用基本数据类型

package scanner;import java.util.Scanner;public class Demo04 {public static void main(String[] args) {Scanner scanner=new Scanner(System.in);//从键盘接收数据int i=0;float f=0.0f;System.out.println("请输入整数数据:");//if语句if (scanner.hasNextInt()==true){i = scanner.nextInt();System.out.println("整数数据:"+i);}else{System.out.println("输入的不是整数数据!");}
//=============================================================System.out.println("请输入小数数据:");//if语句if (scanner.hasNextFloat()==true){f = scanner.nextFloat();System.out.println("小数数据:"+f);}else{System.out.println("输入的不是小数数据!");}scanner.close();}
}
package scanner;import java.util.Scanner;public class Demo05 {public static void main(String[] args) {//我们要输入多个数字,并且求其总和与平均值,每输入一个数字用回车确认,通过输入非数字来结束输入并输出执行结果;Scanner scanner = new Scanner(System.in);//和double sum=0;//计算输入了多少个数字int m=0;System.out.println("请输入数据");//通过循环判断是否还有输入,并且在里面对每一次进行求和和统计while (scanner.hasNextDouble()==true){double x = scanner.nextDouble();//m=m+1m=++m;sum=sum+x;System.out.println("当前输入了第"+m+"个数据,当前结果sum="+sum);}System.out.println(m+"个数和为:"+sum);System.out.println(m+"个数的平均值是::"+(sum/m));scanner.close();}
}

顺序结构

java的基本结构

选择结构

if单选择结构

package struct;import java.util.Scanner;public class Demo01if单选 {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);System.out.println("请输入一个内容:");String s = scanner.nextLine();//equals判断字符串是否相等if (s.equals("Hello")){System.out.println(s);}System.out.println("End");scanner.close();}
}

if双选择结构

package struct;import java.util.Scanner;public class Demo02if双选择 {public static void main(String[] args) {//考试分数大于60分就是及格,小于60分就是不及格。Scanner scanner = new Scanner(System.in);System.out.println("请输入成绩:");int score = scanner.nextInt();if (score>=60){System.out.println("及格");}else {System.out.println("不及格");}scanner.close();}
}

if多选择结构

if(){

}else of(){

}else of(){

}else of(){

.....

}else

}

package struct;import java.util.Scanner;public class Demo03多选择结构 {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);System.out.println("请输入成绩:");int score = scanner.nextInt();if (score==100){System.out.println("恭喜满分!");}else if (score<100&&score>=90){System.out.println("A级");}else if (score<90&&score>=80){System.out.println("B级");}else if (score<80&&score>=70){System.out.println("C级");}else if (score<70&&score>=60) {System.out.println("D级");}else if (score<60&&score>=0) {System.out.println("不及格");}else {System.out.println("成绩不合法");}scanner.close();}
}

switch多选择结构

反编译,把class文件反编译为java文件

点击项目结构,打开项目编译输出的路径,找到class文件,复制到idea文件夹中,从idea中打开文件夹

package struct;public class Demo02switch {public static void main(String[] args) {String name="田";
//字符的本质还是数字//反编译 java编译---class(字节码文件)---反编译switch (name){case "tyz":System.out.println("tyz");break;case"田":System.out.println("田");break;default:System.out.println("弄啥嘞?");}}
}

循环结构

while循环

避免死循环

计算1加到100

package struct;public class Demo02while循环 {public static void main(String[] args) {//计算1+2+3.。。。+100=?int i=0;int sum=0;while (i<=100){sum=sum+i;i++;}System.out.println(sum);}
}

do...while循环

至少会执行一次

package struct;public class Demo02dowhile循环 {public static void main(String[] args) {int a=0;while (a<0){System.out.println(a);//不输出a++;}System.out.println("==================================");do {System.out.println(a);//输出0a++;}while (a<0);}
}

for循环(最有效最灵活)

for(初始化值;布尔值;更新值){

//代码

}

快捷键:条件判断.for

计算0~100之间奇数和偶数的和

package struct;public class for循环Demo02 {public static void main(String[] args) {//0~100之间奇数和偶数和int oddSum=0;//奇数和int evenSum=0;//偶数和for (int i = 0; i <=100; i++) {if (i%2!=0){oddSum+=i;}else {evenSum+=i;}}System.out.println("奇数的和:"+oddSum);System.out.println("偶数的和:"+evenSum);}
}

for循环1~1000之间能被5整除的数,并且每行输出3个

package struct;public class for循环Demo03 {public static void main(String[] args) {//1~1000能被5整除的数  ,并且每行输出三个for (int i = 0; i <= 1000; i++) {if (i%5==0){System.out.print(i+"\t");//转义字符}if(i%(5*3)==0){//换行System.out.println();//System.out.println("\n");}}//println输出完换行//print输出完不换行}
}

for循环的九九乘法表

package struct;public class for循环打印99乘法表Demo04 {public static void main(String[] args) {//去掉重复项,用i<=j判断语句for (int j= 1; j <= 9; j++) {for (int i = 1; i <=j; i++) {System.out.print(i+"*"+j+"="+(i*j)+"\t");}System.out.println();}}
}

增强for循环

package struct;public class for循环增强for循环Demo05 {public static void main(String[] args) {int [] numbers={10,20,30,40,50};//定义了一个数组for (int i=0;i<5;i++){System.out.println(numbers[i ]);}System.out.println("===================");//输出遍历数组的元素for (int x:numbers){System.out.println(x);}}
}

break,continue

break在任何循环语句的主体部分,都可以用break控制循环结束

break用于强行退出循环,不执行循环中剩余的语句(break语句也在switch语句中使用)

continue语句用与循环语句中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定

break

package struct;public class breakDemo01 {public static void main(String[] args) {int i=0;while (i<100){i++;System.out.println(i);if (i==30){break;}//输出1-30}}
}

continue

package struct;public class continueDemo01 {public static void main(String[] args) {int i=0;while (i<100){i++;if (i%10==0){System.out.println();continue;}System.out.println(i);//到10的倍数输出空格}}
}

练习打印三角形

package struct;public class 练习打印三角形Demo01 {public static void main(String[] args) {//打印三角形 打印5行三角形for (int i = 1; i <= 5; i++) {for (int j=5;j>=i;j--){System.out.print(" ");}for (int k=1;k<=i;k++){System.out.print("*");}for (int l=1;l<i;l++){System.out.print("*");}for (int m=5;m>=i;m--) {System.out.print(" ");}System.out.println();}}
}

Java的方法

保持原子性:一个方法只完成一个功能,有利于后期的扩展

  • 方法是解决一类问题的步骤的有序组合
  • 方法包含于类或者对象中
  • 方法在程序中被创建,在其他地方被引用
package method;public class Demo01 {//main 方法public static void main(String[] args) {//实际参数,实际调用传递给他的参数int sum =add(1,2);System.out.println(sum);test();}//加法 方法//形式参数,用来定义作用的public  static int add(int a,int b){return a+b;}//调用for循环public static void test(){
//1~1000能被5整除的数  ,并且每行输出三个for (int i = 0; i <= 1000; i++) {if (i%5==0){System.out.print(i+"\t");//转义字符}if(i%(5*3)==0){//换行System.out.println();//System.out.println("\n");}}}}

方法的定义

一段用来完成特定功能的代码片段

修饰符 返回值类型 方法名(参数类型 参数名){

。。。

方法体

。。。

return 返回值;

}

  • 修饰符:是可选的

  • 返回值类型:方法可能返回值,输出一句话返回值为void(为空)

  • 方法名:方法的实际名字(首字母小写,驼峰)

  • 参数类型:像是一个占位符,可选,也可以不包含任何参数

    • 形式参数:在方法被调用时用于接收外界输入的数据
    • 实参:调用方法实际传给方法的数据
  • 方法体:方法里的具体语句,定义该方法的功能

package method;public class Demo02 {public static void main(String[] args) {//int max = max(10, 20);System.out.println(max(10,20));}//比大小的方法public static int max(int i,int j){int result=0;if (i>j){result=i;}else if (i==j){System.out.println("一样大");return 0;//return有终止方法的意思}else {result=j;}return result;}
}

方法的调用

如果返回值是void,那么返回值一定是一条语句

当方法返回一个值的时候,方法调用通常被当作一个值

方法的重载

重载就是在一个类中,有相同的函数名称,但形参不同的函数

规则:

  • 方法名称必须相同
  • 参数列表必须不同(个数,类型,参数排列顺序)

命令行传参

运行程序的时候再传给程序数据,需要靠传递命令行参数给main()函数实现。

可变参数

  • 在方法声明中,在指定参数类型后加一个”...“
  • 一个方法只能指定一个可变参数,它必须是方法的最后一个参数,任何普通参数必须在他之前声明

递归

边界条件

前阶段

返回阶段

package method;public class Demo03 {//阶乘public static void main(String[] args) {System.out.println(f(5));}public static int f(int n){if (n==1){return 1;//边界条件}else {//前阶段return n*f(n-1);//返回阶段}}
}

自己调用自己

递归结构包括两个部分

  • 递归头:什么时候不调用自身方法。如果没有头,将陷入死循环
  • 递归体:什么时候需要调用自身方法

计算器的编程(scanner,switch)

package method;import java.util.Scanner;public class 计算器Demo4 {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);System.out.println("请输入第一个数字");double num1 = scanner.nextInt();System.out.println("请输入运算符");String operator1 = scanner.next();System.out.println("请输入第二个数字");double num2 = scanner.nextInt();System.out.println("请输入运算符");String operator2 = scanner.next();System.out.println("请输入第三个数字");double num3 = scanner.nextInt();double result1=0;double result2=0;switch (operator1){case "+":result1=num1+num2;break;case "-":result1=num1-num2;break;case "*":result1=num1*num2;break;case "/":result1=num1/num2;break;default:System.out.println("您的输入不合法!");return ;}//==============================================switch (operator2){case "+":result2=result1+num3;break;case "-":result2=result1-num3;break;case "*":result2=result1*num3;break;case "/":result2=result1/num3;break;default:System.out.println("您的输入不合法!");return ;}System.out.println("结果是:"+num1+operator1+num2+operator2+num3+"="+result2);
scanner.close();}
}

Java数组

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

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

相关文章

10亿数据,如何做迁移?

前言 某次金融系统迁移项目中,原计划8小时完成的用户数据同步迟迟未能完成。 24小时后监控警报显示:由于全表扫描SELECT * FROM users导致源库CPU几乎熔毁,业务系统被迫停机8小时。 这让我深刻领悟到——10亿条数据不能用蛮力搬运,得用巧劲儿递接! 今天这篇文章,跟大家一…

2025.2.21的模拟赛题“糖果”题解

2025.2.21的模拟赛题“糖果”题解为避免混淆,题目中的 \(X\) 在下文中为大写。 称前 \(k-1\) 次操作成为1号操作,第 \(k\) 次(不含)以后的操作称作2号操作 设 \(f_{x,i,j}\) 表示在 \(x\) 的子树中,1号操作做了 \(i\) 次,2号操作做了 \(j\) 次 限制就是\(X\) 到跟的路径不…

【飞书】Zabbix 7.2 告警与飞书机器人深度联动的全流程

midnight, the sound of a phone buzzing wakes you up abruptly. "又是告警!"你猛地从床上坐起,眼睛酸涩地盯着手机屏幕。作为一名运维工程师,这样的场景几乎成了家常便饭。无论是深夜还是清晨,系统故障总能找到你的联系方式,仿佛在提醒你:科技24小时不眠不休…

Windows平台上Idea、Tomcat、浏览器页面显示乱码问题解决

核心:乱码问题是由于字符编码不一致导致的,所以解决乱码问题的核心概念是统一字符编码。首先我们查看各个平台的字符编码: Windows cmd中输入chcp 命令查看(Windows系统默认字符编码时GBK)936 代表 GBK 65001 代表 UTF-8 注意:通过chcp命令如 chcp 65001 来更改字符编码只…

关于 xrlong 是神的论证

xrlong orz搜索内容搜索结果__________________________________________________________________________________________本文来自博客园,作者:CuFeO4,转载请注明原文链接:https://www.cnblogs.com/hzoi-Cu/p/18729881

idea插件+cursor使用技巧

cursorignore配置# Compiled files *.class *.jar *.war# Build directories target/ build/# IDE files .idea/ *.iml .vscode/ .project .classpath .settings/# Logs *.log logs/# Temporary files *.tmp *.bak *.swp# Maven specific .mvn/ mvnw mvnw.cmd# Spring Boot spe…

设计测试用例方法 -经验方法(三种)

1、基于经验的测试技术之错误推测法 错误推测法也叫错误猜测法,就是根据经验猜想,已有的缺陷,测试经验和失败数据等可能有什么问题并依此设计测试用例2、基于经验的测试技术之异常分析法 系统异常分析法就是针对系统有可能存在的异常操作、软硬件缺陷引起的故障进行分析,依…

DeepSeek 即将发布 5 个开源项目;Cartesia Voice Changer:声音转换、克隆和实时语音翻译丨日报

开发者朋友们大家好:这里是 「RTE 开发者日报」 ,每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享 RTE(Real-Time Engagement) 领域内「有话题的 技术 」、「有亮点的 产品 」、「有思考的 文章 」、「有态度的 观点 」、「有看点的 活动 」,但内容仅代表编辑…

Spring复习-注解开发

@Component 基本Bean注解,主要是使用注解的方式替代原有xml的 标签及其标签属性的配置使用@Component 注解替代标签使用:再类上使用 @Component(value = "userDao") //若没有配置value,默认使用类名作为beanName public class UserDaoImpl implements UserDao { }…

测试用例编写技巧

一、用例模板 模板1:模板2:模板3:二、用例的来源 (1)公司就有模板 (2)自己设计模板 (3)用例管理工具种导出模板 三、写用例的核心要素 用例编号、用例标题、前置条件、用例步骤,预期结果、优先级(必填) 系统名称、模块名称、用例创建时间、用例类型、实际结果、执行…

利用deepseek,体验ai写代码

vscode利用cline接入火山引擎deepseek,免费体验ai写代码。注册火山引擎,开通deepseek服务进行火山引擎官网https://www.volcengine.com/,进行注册。进入控制台,访问火山方舟在左侧下拉菜单选择开通管理,开通模型,由于我已经开通过R1模型,以DeepSeek-R1-Distill-Qwen-32B…

测试用例编写

模板1:模板2:模板3:二、用例的来源(1)公司就有模板(2)自己设计模板(3)用例管理工具种导出模板三、写用例的核心要素用例编号、用例标题、前置条件、用例步骤,预期结果、优先级(必填)系统名称、模块名称、用例创建时间、用例类型、实际结果、执行时间(非必填项)四…