Sessão: comportamento estranho

Tenho uma página de login e a seguinte classe:

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;


public class Sessao
{	
	private HttpServletRequest request;
	private HttpServletResponse response;
	private HttpSession sessao;
	
	/* -1: Impossivel criar sessao (objetos request e/ou response nulos)
	 *  0: Sessao criada com sucesso!
	 *  1: Sessao já criada anteriormente
	 */
	public int criaSessao(){
		
		if(this.request == null || this.response == null){
			
			System.out.printf("Impossivel criar sessao.\n");
			System.out.printf("Objetos request e/ou response nulos na classe Sessao!\n\n");
			
			return -1;//Impossivel criar sessao
		}
		
		if( (this.sessao = this.request.getSession(false)) != null){
			
			System.out.printf("Sessao já criada anteriormente!\n");
			
			return 1;//Sessao já criada anteriormente
		}
		
		this.sessao = this.request.getSession();
		System.out.printf("Nova sessao criada com sucesso!\n");
		return 0; //Sessao criada com sucesso!
	}
	
	//Sets and Getters ...
	public HttpServletRequest getRequest() {
		return request;
	}
	public void setRequest(HttpServletRequest request) {
		this.request = request;
	}
	public HttpServletResponse getResponse() {
		return response;
	}
	public void setResponse(HttpServletResponse response) {
		this.response = response;
	}

	public HttpSession getSessao() {
		return sessao;
	}

	public void setSessao(HttpSession sessao) {
		this.sessao = sessao;
	}
}

Assim que o usuário faz o login, eu faço:

Sessao s = new Sessao();
s.setRequest(request);
s.setResponse(response);
int inteiro = s.criaSessao();
            
System.out.printf("s: %d\n", inteiro);

Minha pergunta é: na primeira vez que executo essas instruções, o último System.out.printf não deveria imprimir “s: 0” ??? E, a partir da segunda, não deveria imprimir “s: 1” ??? Porém, aqui ele imprimi “s: 1” desde a primeira requisição, como se o usuário já tivesse pego uma sessão anteriormente!

O que estou errando?

Obrigado.