codigo_azul/pessoa_fisica.js

37 lines
629 B
JavaScript
Executable File

import Pessoa from './pessoa.js'
import { cpf } from 'brazilian-doc-validator';
import ErroCustomizado from "./erro_customizado.js";
class PessoaFisica extends Pessoa {
#_cpf
constructor(nome) {
super(nome)
}
set cpf(_cpf) {
try {
this.#_cpf = this.#validarCPF(_cpf)
} catch(erro){
console.log(erro)
}
}
get cpf() {
return this.#_cpf
}
#validarCPF(_cpf){
if (!cpf.validate(_cpf)){
throw new ErroCustomizado("CPF Inválido")
}
return _cpf
}
mostrarDados(){
return `Meus dados são: ${this.nome} e ${this.cpf}`
}
}
export default PessoaFisica