欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java基礎(chǔ)的詳細了解第六天

 更新時間:2021年08月10日 10:17:26   作者:zsr6135  
這篇文章對Java編程語言的基礎(chǔ)知識作了一個較為全面的匯總,在這里給大家分享一下。需要的朋友可以參考,希望能給你帶來幫助

1、this關(guān)鍵字

首先需要提醒的是,在整個Java之中,this是最麻煩的一個關(guān)鍵字,只要是代碼開發(fā),幾乎都離不開this。在Java中this可以完成三件事情:表示本類屬性、表示本類方法、表示當前對象(只介紹概念)。

1.1 “this.屬性”表示本類屬性

在講解著一操作之前首先觀察如下程序:

class Person{
	private String name;
	private int age;
	public Person(String n,int a){
		name = n;
		age = a;
	}
	public String getInfo(){
		return "姓名:"+name+","+"年齡:"+age;
	}
}
public class ThisText{
	public static void main(String args[]){
		Person per = new Person("張三",20);
		System.out.println(per.getInfo());
	}
}

這個時候的構(gòu)造方法的兩額參數(shù)的目的是為了類中的name和age兩額屬性初始化,可是這個方法上的兩個參數(shù)一個是字母n一個是字母a,什么意思?那么最好的做法,既然構(gòu)造方法的兩個參數(shù)是為了類中name和age初始化使用,那么最好將其參數(shù)名稱也定義為name和age才最為直觀。

public Person(String name,int age){
		name = name;
		age = age;
}

此時構(gòu)造方法中參數(shù)的名稱變得有意義了,但是這樣一來就出現(xiàn)問題了,發(fā)現(xiàn)屬性沒有內(nèi)容了!因為在程序之中是采用“{}”作為分界,采用就近的取用原則,所以現(xiàn)在為了明確指定要操作的是類中屬性的話,那么應(yīng)該采用“this.屬性”的形式完成,代碼應(yīng)該變?yōu)椋?/p>

public Person(String name,int age){
   	this.name = name;     //this.name   表示類中的屬性name
   	this.age = age;
}

提示:在日后的所有開發(fā)過程之中,如果要調(diào)用類中屬性的話,都要使用“this.屬性”的方式來調(diào)用。

1.2“this”表示調(diào)用本類方法

對于一個類之中的方法分為兩種:

1、普通方法:之前強調(diào)過,如果現(xiàn)在要調(diào)用的是本類之中的方法,則可以使用“this.方法()”調(diào)用。

2、構(gòu)造方法:調(diào)用其他構(gòu)造使用“this ()”調(diào)用。

例如:現(xiàn)在一個類之中存在了三個構(gòu)造方法(無參、有一個參數(shù)、有兩個參數(shù)),但是不管使用何種構(gòu)造方法,都要求在實例化對象產(chǎn)生的時候輸出一行提示信息:“歡迎光臨”。

class Person{
	private String name;
	private int age;
	public Person(){
		System.out.println("-----歡迎光臨-----");
	}
	public Person(String name){
		System.out.println("-----歡迎光臨-----");
		this.name = name;
	}
	public Person(String name,int age){
		System.out.println("-----歡迎光臨-----");
		this.name = name;
		this.age = age;
	}
	public String getInfo(){
		return "姓名:"+name+","+"年齡:"+age;
	}
}
public class ThisText1{
	public static void main(String args[]){
		Person per = new Person();
		System.out.println(per.getInfo());
	}
}

不過,遺憾的是按照之前的知識來講,此時的程序之中會出現(xiàn)大量的重復(fù)代碼,而這樣的方法不是最優(yōu)的。

這種情況下就可以利用this()來完成

class Person{
	private String name;
	private int age;
	public Person(){
		System.out.println("-----歡迎光臨-----");
	}
	public Person(String name){
		this();           //調(diào)用無參構(gòu)造方法
		this.name = name;
	}
	public Person(String name,int age){
		this(name);   //調(diào)用有一個參數(shù)的構(gòu)造方法
		this.age = age; 
	}
	public String getInfo(){
		return "姓名:"+name+","+"年齡:"+age;
	}
    public class ThisText1{
	public static void main(String args[]){
		Person per = new Person();
		System.out.println(per.getInfo());
	}
}

使用this()就完成了構(gòu)造方法之間的互相調(diào)用。

**注意:**在使用this()調(diào)用構(gòu)造方法的時候有以下問題:

1、所有的構(gòu)造方法實在對象實例化的時候被默認調(diào)用,而且是在調(diào)用普通方法之前調(diào)用,所以使用“this()”調(diào)用構(gòu)造方法的操作,一定要放在構(gòu)造方法的首行;

2、如果一個類之中存在了多種構(gòu)造方法的話,并且這些構(gòu)造方法都使用this()相互調(diào)用,那么至少要保證一個構(gòu)造方法沒有調(diào)用其他構(gòu)造,以作程序的出口。

1.3“this”表示當前對象

class Dx{
	public void fun(){
			System.out.println("當前對象:" + this);
		}
}
public class Ob{
	public static void main(String args[]){
		Dx dx = new Dx();
		System.out.println(dx);
		dx.fun();
		Dx dx1 = new Dx();
		System.out.println(dx1);
		dx1.fun();
	}
}

image-20210731192229637

1.4引用傳遞進階分析

程序一

class Message{
	private String num;
	public void setNum(String num){
		this.num = num;
	}
	public String getNum(){
		return num;
	}
}
public class TestDemo1{
	public static void main(String args[]){
		Message message = new Message();
		message.setNum("100");
		fun(message);
		//30
		System.out.println(message.getNum());
	}
	public static void fun(Message temp){	//引用傳遞
		temp.setNum("30");
	}
}

image-20210731193715762

程序二

public class TestDemo2{
	public static void main(String args[]){
		String str = "hello";
		fun(str);
		//hello
		System.out.println(str);
	}
	public static void fun(String temp){
		temp = "world";
	}
}

本程序的關(guān)鍵是:String的內(nèi)容一旦聲明則不可改變,改變的是內(nèi)存的地址指向。

image-20210731200941440

1.5對象比較

對象的比較實際就是對象屬性的比較。

class Person{
	private String name;
	private int age;
	public Person(String name,int age){
		this.name = name;
		this.age = age;
	}
	public void setName(String name){
		this.name = name;
	}
	public void setAge(int age){
		this.age = age;
	}
	public String getName(){
		return this.name;
	}
	public int getAge(){
		return this.age;
	}
}
public class TestDemo3{
	public static void main(String args[]){
		Person per1 = new Person("張三",20);
		Person per2 = new Person("張三",20);
		//false
		System.out.println(per1==per2);	//比較兩個對象的地址
		//是同一個對象
		if(per1.getName().equals(per2.getName())&&per1.getAge() == per2.getAge()){
			System.out.println("是同一個對象");
		}
		else{
			System.out.println("不是同一個對象");
		}
	}
}

對象比較的操作一定是一個類自己本身所具備的功能,而且對象比較的操作特點:

  • 本類接收自己的引用,而后與本類當前對象(this)進行比較;
  • 為了避免NullPointerException的產(chǎn)生,應(yīng)該增加一個null的判斷;
  • 為了防止浪費性能的情況出現(xiàn),可以增加地址數(shù)值的判斷,相同的對象地址相同;
  • 之后與屬性依次進行比較,如果屬性全部相同,則返回true,否則返回false。

1.6引用傳遞實際應(yīng)用

//電腦
class Computer{
	private View [];
	private Host;
}
//顯示器
class View{
}
//主機
class Host{
	private Board;
}
//主板
class Board{
	private Cpu [];
	private Memory[];
	private Disk[];
}
//CPU
class Cpu{
}
//內(nèi)存
class Memory{
}
//硬盤
class Disk{
}
public class TestDemo3{
	public static void main(String args[]){
	}
}

重點 1.7數(shù)據(jù)表與簡單Java類(一對多)

利用此關(guān)系模型,表示出emp和dept的關(guān)系,使用字段:

​ **emp表:**empno、ename、job、sal、comm、mgr、deptno;

​ **dept表:**deptno、dname、loc。

第一步 編寫實體類

class Emp{
	private int empno;
	private String ename;
	private String job;
	private double sal;
	private double comm;
	public Emp(int empno,String ename,String job,double sal,double comm){
		this.empno = empno;
		this.ename = ename;
		this.job = job;
		this.sal = sal;
		this.comm = comm;
	}
	public String getEmpInfo(){
		return "【Emp】 empno = " + this.empno +
				",ename = " + this.ename +
				",job; = " + this.job +
				",sal = " + this.sal +
				",comm = " + this.comm;
	}
}
class Dept{
	private int deptno;
	private String dname;
	private String loc;
	public Dept(int deptno, String dname, String loc){
			this.deptno = deptno;
			this.dname = dname;
			this.loc = loc;
	}
	public String getDept(){
		return "deptno = " + this.deptno +
				",dname = " + this.dname +
				",loc = " + this.loc;
	}
}
public class Exam1_7{
	public static void main(String args[]){
	}
}

第二步 進行關(guān)系設(shè)計

一個雇員屬于一個部門,需要追加部門引用

一個雇員有一個領(lǐng)導(dǎo),領(lǐng)導(dǎo)一定是自身關(guān)聯(lián)

一個部門有一個雇員,需要一個對象數(shù)組來描述多個雇員信息

class Emp{
	private int empno;
	private String ename;
	private String job;
	private double sal;
	private double comm;
	private Emp mgr; //描述雇員的領(lǐng)導(dǎo)
	private Dept dept;	//描述雇員的部門
	public Emp(int empno,String ename,String job,double sal,double comm){
		this.empno = empno;
		this.ename = ename;
		this.job = job;
		this.sal = sal;
		this.comm = comm;
	}
	public void setMgr(Emp mgr){
		this.mgr  = mgr;
	}
	public Emp getMgr(){
		return this.mgr;
	}
	public void setDept(Dept dept){
		this.dept = dept;
	}
	public Dept getDept(){
		return this.dept;
	}
	public String getEmpInfo(){
		return "【Emp】 empno = " + this.empno +
				",ename = " + this.ename +
				",job; = " + this.job +
				",sal = " + this.sal +
				",comm = " + this.comm;
	}
}
class Dept{
	private int deptno;
	private String dname;
	private String loc;
	private Emp [] emps;	//一個部門有多個雇員
	public Dept(int deptno, String dname, String loc){
			this.deptno = deptno;
			this.dname = dname;
			this.loc = loc;
	}
	public void setEmps(Emp [] emps){
		this.emps = emps;
	}
	public Emp [] getEmps(){
		return this.emps;
	}
	public String getDept(){
		return "deptno = " + this.deptno +
				",dname = " + this.dname +
				",loc = " + this.loc;
	}
}
public class Exam1_7{
	public static void main(String args[]){
	}
}

此時基本類定義完成。

第三步 開發(fā)需求

主函數(shù)main

public class Exam1_7{
	public static void main(String args[]){
		//第一步、設(shè)置類對象的關(guān)系
		//1.分別創(chuàng)建各自對象實例化
		Dept dept = new Dept(10,"市場部","New York");
		Emp ea = new Emp(7345,"Rock","CLERK",800.0,0);
		Emp eb = new Emp(7567,"Joker","MANAGER",3050.0,0);
		Emp ec = new Emp(7825,"Ben","PRESIDENT",10000.0,0);
		//2.設(shè)置雇員和領(lǐng)導(dǎo)的關(guān)系
		ea.setMgr(eb);
		eb.setMgr(ec); 	//ec沒有領(lǐng)導(dǎo) 自己就是最大的領(lǐng)導(dǎo)
		//3.設(shè)置雇員和部門的關(guān)系
		ea.setDept(dept);
		eb.setDept(dept);
		ec.setDept(dept);
		//4.設(shè)置部門的雇員
		dept.setEmps(new Emp[]{ea, eb, ec});
		//第二步、進行數(shù)據(jù)的取得
		//一個部門有多個雇員
		/* 
			【Emp】 empno = 7345,ename = Rock,job = CLERK,sal = 800.0,comm = 0.0
			【Emp】 empno = 7567,ename = Joker,job = MANAGER,sal = 3050.0,comm = 0.0
			【Emp】 empno = 7825,ename = Ben,job = PRESIDENT,sal = 10000.0,comm = 0.0
		*/
		for(int i = 0; i <  dept.getEmps().length; i++){
			System.out.println(dept.getEmps()[i].getEmpInfo());
		}
		System.out.println();
		//一個雇員有一個領(lǐng)導(dǎo)	
		//【Emp】 empno = 7567,ename = Joker,job = MANAGER,sal = 3050.0,comm = 0.0
		System.out.println(ea.getMgr().getEmpInfo());
		//【Emp】 empno = 7825,ename = Ben,job = PRESIDENT,sal = 10000.0,comm = 0.0
		System.out.println(eb.getMgr().getEmpInfo());
		//Exception in thread "main" java.lang.NullPointerException 
		//沒有設(shè)置關(guān)系 所以自己是老板 顯示空指針異常
		//System.out.println(ec.getMgr().getEmpInfo());
		System.out.println();
		//一個雇員屬于同個部門
		//deptno = 10,dname = 市場部,loc = New York
		System.out.println(ea.getDept().getDeptInfo());
		//deptno = 10,dname = 市場部,loc = New York
		System.out.println(eb.getDept().getDeptInfo());
		//deptno = 10,dname = 市場部,loc = New York
		System.out.println(ec.getDept().getDeptInfo());
	}
}

在上面的代碼基礎(chǔ)上進行改進

//一個部門有多個雇員,一個雇員有一個領(lǐng)導(dǎo),一個雇員屬于同個部門
		 /* 
【Emp】 empno = 7345,ename = Rock,job = CLERK,sal = 800.0,comm = 0.0
該雇員所屬的領(lǐng)導(dǎo)【Emp】 empno = 7567,ename = Joker,job = MANAGER,sal = 3050.0,comm = 0.0
該雇員所屬的部門deptno = 10,dname = 市場部,loc = New York
------------------------------------------------------------------
【Emp】 empno = 7567,ename = Joker,job = MANAGER,sal = 3050.0,comm = 0.0
該雇員所屬的領(lǐng)導(dǎo)【Emp】 empno = 7825,ename = Ben,job = PRESIDENT,sal = 10000.0,comm = 0.0
該雇員所屬的部門deptno = 10,dname = 市場部,loc = New York
------------------------------------------------------------------
【Emp】 empno = 7825,ename = Ben,job = PRESIDENT,sal = 10000.0,comm = 0.0
自己就是領(lǐng)導(dǎo)
------------------------------------------------------------------
		 */
		for(int i = 0; i <  dept.getEmps().length; i++){
			System.out.println(dept.getEmps()[i].getEmpInfo());			
			if(dept.getEmps()[i].getMgr() != null){
				System.out.println("該雇員所屬的領(lǐng)導(dǎo)" +
				dept.getEmps()[i].getMgr().getEmpInfo());
				System.out.println("該雇員所屬的部門" +
				dept.getEmps()[i].getDept().getDeptInfo());
				System.out.println("------------------------------------------------------------------");
			}
			else{
				System.out.println("自己就是領(lǐng)導(dǎo)");
				System.out.println("------------------------------------------------------------------");
			}
		}

1.8數(shù)據(jù)表與簡單Java類(多對多)

利用此關(guān)系模型,表示出student和course的關(guān)系,使用字段:

​ **student表:**stuid、name、age。

​ **course表:**cid、name、credit。

​ 關(guān)系表:學生編號、課程編號、成績

要求:

可以找到一門課程,參加此次課程的所有學生信息和成績

可以根據(jù)一個學生,找到所參加的所有課程和沒門課程的一個成績

第一步 編寫實體類

class Student{
	private int stuid;
	private String name;
	private int age;
	public Student(int stuid, String name, int age){
		this.stuid = stuid;
		this.name = name;
		this.age = age;
	}
	public String getStuInfo(){
		return "【Student】stuid = " + this.stuid +
				",name = " + this.name +
				",age = " +this.age ;
	}
}
class Course{
	private int cid;
	private String name;
	private double credit;
	public Course(int cid, String name, double credit){
		this.cid = cid;
		this.name = name;
		this.credit = credit;
	}
	public String getCouInfo(){
		return "【Course】cid = " + this.cid +
				",name = " + this.name +
				",credit = " + this.credit;
	}
}
class StudentCourse{//學生選課
	private Student student;
	private Course course;
	private double score;
	public StudentCourse(Student student, Course course, double score){
		this.student =student;
		this.course = course;
		this.score = score;
	}
	public Student getStudent(){
		return this.student;
	}
	public Course getCrouse(){
		return this.course;
	}
	public double getScore(){
		return this.score;
	}
}

第二步 進行關(guān)系設(shè)計

class Student{
	private int stuid;
	private String name;
	private int age;
	private StudentCourse studentCourses [];
	public Student(int stuid, String name, int age){
		this.stuid = stuid;
		this.name = name;
		this.age = age;
	}
	public void setStudentCourses(StudentCourse []studentCourses){
		this.studentCourses = studentCourses;
	}
	public StudentCourse[] getStudentCourses(){
		return this.studentCourses;
	}
	public String getStuInfo(){
		return "【Student】stuid = " + this.stuid +
				",name = " + this.name +
				",age = " +this.age ;
	}
}
class Course{
	private int cid;
	private String name;
	private double credit;
	private StudentCourse studentCourses[];
	public Course(int cid, String name, double credit){
		this.cid = cid;
		this.name = name;
		this.credit = credit;
	}
	public void setStudentCourses(StudentCourse []studentCourses){
		this.studentCourses = studentCourses;
	}
	public StudentCourse[] getstudentCourses(){
		return this.studentCourses;
	}
	public String getCouInfo(){
		return "【Course】cid = " + this.cid +
				",name = " + this.name +
				",credit = " + this.credit;
	}
}
class StudentCourse{//學生選課
	private Student student;
	private Course course;
	private double score;
	public StudentCourse(Student student, Course course, double score){
		this.student =student;
		this.course = course;
		this.score = score;
	}
	public Student getStudent(){
		return this.student;
	}
	public Course getCrouse(){
		return this.course;
	}
	public double getScore(){
		return this.score;
	}
}

第三步 開發(fā)需求

主函數(shù)main

public class Exam1_8{
	public static void main(String args[]){
		//第一步、設(shè)置類對象的關(guān)系
		//1.分別創(chuàng)建各自對象實例化
		Student stu1 = new Student(107,"Rock",13);
		Student stu2 = new Student(108,"Joker",18);
		Student stu3 = new Student(109,"Perke",22);
		Course ca = new Course(1,"數(shù)據(jù)結(jié)構(gòu)",4.0);
		Course cb = new Course(2,"計算機操作系統(tǒng)",2.0);
		Course cc = new Course(3,"SSM框架集合",3.0);
		//2.設(shè)置學生和課程的關(guān)系
		stu1.setStudentCourses(new StudentCourse[]{
			new StudentCourse(stu1,ca,78.0),
		});
		stu2.setStudentCourses(new StudentCourse[]{
			new StudentCourse(stu2,ca,87.0),
			new StudentCourse(stu2,cb,79.0)
		});
		stu3.setStudentCourses(new StudentCourse[]{
			new StudentCourse(stu3,ca,90.0),
			new StudentCourse(stu3,cb,95.0),
			new StudentCourse(stu3,cc,99.0)
		});
		//3.設(shè)置課程和學生的關(guān)系
		ca.setStudentCourses(new StudentCourse[]{
			new StudentCourse(stu1,ca,78.0),
			new StudentCourse(stu2,ca,87.0),
			new StudentCourse(stu3,ca,90.0)
		});
		cb.setStudentCourses(new StudentCourse[]{
			new StudentCourse(stu2,cb,79.0),
			new StudentCourse(stu3,ca,90.0)
		});
		cc.setStudentCourses(new StudentCourse[]{
			new StudentCourse(stu3,cc,99.0)
		});
		//第二步、進行數(shù)據(jù)的取得
		//可以找到一門課程,參加此次課程的所有學生信息和成績
		/* 
【Course】cid = 1,name = 數(shù)據(jù)結(jié)構(gòu),credit = 4.0
學生名單:【Student】stuid = 107,name = Rock,age = 13,成績:78.0
學生名單:【Student】stuid = 108,name = Joker,age = 18,成績:87.0
學生名單:【Student】stuid = 109,name = Perke,age = 22,成績:90.0
		*/
		System.out.println(ca.getCouInfo());
		for(int i = 0 ;i < ca.getStudentCourses().length ; i++){
			System.out.print("學生名單:"+ ca.getStudentCourses()[i].getStudent().getStuInfo());
			System.out.println(",score = "+ ca.getStudentCourses()[i].getScore());	
		}
		System.out.println("--------------------------------------------------------------------");
		 //可以根據(jù)一個學生,找到所參加的所有課程和沒門課程的一個成績
		 /* 
【Student】stuid = 109,name = Perke,age = 22
選課列表:【Course】cid = 1,name = 數(shù)據(jù)結(jié)構(gòu),credit = 4.0,score = 90.0
選課列表:【Course】cid = 2,name = 計算機操作系統(tǒng),credit = 2.0,score = 95.0
選課列表:【Course】cid = 3,name = SSM框架集合,credit = 3.0,score = 99.0
		 */
		 System.out.println(stu3.getStuInfo());
		for(int i = 0; i < stu3.getStudentCourses().length ; i++){
			System.out.print("選課列表:" + stu3.getStudentCourses()[i].getCourse().getCouInfo());
			System.out.println(",score = "+ stu3.getStudentCourses()[i].getScore());
		}	
	}
}

總結(jié)

本篇文章就到這里了,希望能給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • 使用@Autowired注解引入server服務(wù)層方法時報錯的解決

    使用@Autowired注解引入server服務(wù)層方法時報錯的解決

    這篇文章主要介紹了使用@Autowired注解引入server服務(wù)層方法時報錯的解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • JAVA隨機數(shù)隨機字母的實現(xiàn)(微信搶紅包小練習)

    JAVA隨機數(shù)隨機字母的實現(xiàn)(微信搶紅包小練習)

    這篇文章主要介紹了JAVA隨機數(shù)隨機字母的實現(xiàn)(微信搶紅包小練習),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-04-04
  • java開發(fā)_圖片截取工具實現(xiàn)原理

    java開發(fā)_圖片截取工具實現(xiàn)原理

    本文將詳細介紹java開發(fā)_圖片截取工具實現(xiàn)原理,需要了解的朋友可以參考下
    2012-11-11
  • Java編程中二維數(shù)組的初始化和基本操作實例

    Java編程中二維數(shù)組的初始化和基本操作實例

    這篇文章主要介紹了Java編程中二維數(shù)組的初始化和基本操作實例,是Java入門學習中的基礎(chǔ)知識,需要的朋友可以參考下
    2015-10-10
  • java7改善后的異常處理

    java7改善后的異常處理

    在本篇文章里小編給大家整理的是關(guān)于java7改善后的異常處理知識點總結(jié),有需要的朋友們參考下。
    2019-11-11
  • SpringBoot集成Swagger2構(gòu)建在線API文檔的代碼詳解

    SpringBoot集成Swagger2構(gòu)建在線API文檔的代碼詳解

    這篇文章主要介紹了SpringBoot集成Swagger2構(gòu)建在線API文檔,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-12-12
  • 四個Java常見分布式鎖的選型和性能對比

    四個Java常見分布式鎖的選型和性能對比

    當涉及到分布式系統(tǒng)中的并發(fā)控制和數(shù)據(jù)一致性時,分布式鎖是一種常見的解決方案,本文將對幾種常見的分布式鎖實現(xiàn)原理、實現(xiàn)示例、應(yīng)用場景以及優(yōu)缺點進行詳細分析,需要的可以參考一下
    2023-05-05
  • 基于JDK8-lambda表達式四種forEach性能對比

    基于JDK8-lambda表達式四種forEach性能對比

    這篇文章主要介紹了基于JDK8-lambda表達式四種forEach性能對比,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • 解決swagger主頁訪問,返回報錯500問題

    解決swagger主頁訪問,返回報錯500問題

    在使用Swagger時遇到500錯誤,通過仔細的debug發(fā)現(xiàn)問題源于注解使用不當,具體表現(xiàn)為一個接口的入?yún)⒈诲e誤地注解了三個參數(shù),而實際上只有兩個,這導(dǎo)致了Swagger在解析時拋出了NullPointerException異常,解決方法是刪除錯誤的第三個參數(shù)的注解
    2024-09-09
  • Zookeeper全局唯一ID生成方案解析

    Zookeeper全局唯一ID生成方案解析

    這篇文章主要介紹了Zookeeper全局唯一ID生成方案解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-12-12

最新評論