Não estou conseguindo imprimir os dados. só aparece null toda hora.

Classe PrincipalPessoa
import java.util.Scanner;
/**
*
* @author Daniel
*/
public class PrincipalPessoa {
static private int warn=0;
static private String dataNasc;
/* warn serve para saber se o ano, mes e dia foram digitados de forma
adequada, do contrário ele inicia sempre uma nova solicitação atraves do
metodo recebeDataNasc();
*/
public static void main(String[] args) {
Pessoa myPessoa = new Pessoa ();
String cpf;
String nome;
Scanner x = new Scanner (System.in);
System.out.println("i-iniciar - s-sair");
String escolha=x.next();
while (escolha.equalsIgnoreCase("i")) {
System.out.println("selecione o opção");
System.out.println("1-Imprimir dados");
System.out.println("2-cadastrar dados");
int op=x.nextInt();
if (op==1) {//Exbição/impressao
myPessoa.mostraImpressao();
}
if (op==2) {//cadastro
System.out.println("Informe cpf ");
cpf=x.next();
System.out.println("Informe nome ");
nome=x.next();
Pessoa mypp = new Pessoa (cpf, nome, dataNasc);//teste
if (cpf!=null && nome!=null) {
do {
PrincipalPessoa mp=new PrincipalPessoa();
mp.recebeDataNasc();
} while (warn==0);
Pessoa myPersona = new Pessoa (cpf, nome, dataNasc);
}
}
};
}
void recebeDataNasc() {
int ano;
int mes;
int dia=0;
int c=0;//saber se data de nascimento foi preenchida corretamente
Scanner x = new Scanner (System.in);
System.out.println("Informe data de nascimento (AAAA/MM/DD)");
System.out.println("Ano");
ano=x.nextInt();
if (ano>=1900 && ano<=2011)
System.out.println("Mês (1-12)");
mes=x.nextInt();
c=c+1;
if (mes<0 || mes>12) {
c=0;
System.out.println("mês inválido");
}
if (mes>=1 && mes<=12) {
System.out.println("Dia (1-31");
dia=x.nextInt();
c++;
if (dia<0 || dia>31) {
dia=0;
System.out.println(" dia inválido");
}
if (mes==2&&dia>28) {
System.out.println("dia e mes incompativel");
}
}
else
System.out.println("Data invalida. Tente novamente");
if (c==2 && dia!=0){
dataNasc= ano+"/"+mes+"/"+dia;
warn=1;
}
}
}[/code]
[b]classe Pessoa[/b]
[code]/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
/**
*
* @author Daniel
*/
public class Pessoa {
private String cpf;
private String nome;
private String dataNasc;
public Pessoa () {
}
public Pessoa (String mycpf, String mynome, String mydataNasc) {
this.cpf=mycpf;
this.nome=mynome;
this.dataNasc=mydataNasc;
}
String getCpf () {
return cpf;
}
String getNome(){
return nome;
}
String getDataNasc () {
return dataNasc;
}
void mostraImpressao () {
System.out.println("nome "+getNome());
System.out.println("cpf "+getCpf());
System.out.println("data de nascimento "+getDataNasc());
}
}