Bienvenida e Introducci贸n

1

驴Por qu茅 aprender Programaci贸n Orientada a Objetos?

2

驴Qu茅 resuelve la Programaci贸n Orientada a Objetos?

3

Paradigma Orientado a Objetos

4

Lenguajes Orientados a Objetos

5

Instalando Visual Studio Code

6

Diagramas de Modelado

7

Qu茅 es UML

Orientaci贸n a Objetos

8

Objetos

9

Abstracci贸n y Clases

10

Modularidad

11

Analizando Uber en Objetos

12

Reto 1: identificando objetos

Programaci贸n Orientada a Objetos. An谩lisis

13

Clases en UML y su sintaxis en c贸digo

14

Modelando nuestros objetos Uber

15

驴Qu茅 es la herencia?

16

Aplicando Herencia a nuestro proyecto Uber

17

Reto 2: analicemos un problema

Clases, Objetos y M茅todo Constructor

18

Creando nuestras carpetas iniciales para el curso

19

Definiendo clases en Java y Python

20

Definiendo Clases en JavaScript

21

Objetos, m茅todo constructor y su sintaxis en c贸digo

22

Objetos. Dando vida a nuestras clases en Java y Python

23

Declarando un M茅todo Constructor en Java y JavaScript

24

JavaScript orientado a objetos, lo m谩s nuevo

25

Declarando un m茅todo constructor en Python

Herencia

26

Aplicando herencia en lenguaje Java y PHP

27

Soluci贸n del reto de herencia en PHP

28

Aplicando herencia en lenguaje Python y JavaScript

29

Otros tipos de Herencia

30

Reto 4

Encapsulamiento

31

Encapsulamiento

32

Encapsulando atributos en Java

Polimorfismo

33

Generando polimorfismo en Java

34

Generando polimorfismo en PHP

Cierre del curso

35

El Diagrama UML de Uber

36

Conclusiones

37

Bonus: Qu茅 es la Programaci贸n Orientada a Objetos

No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Aprende todo un fin de semana sin pagar una suscripci贸n 馃敟

Aprende todo un fin de semana sin pagar una suscripci贸n 馃敟

Reg铆strate

Comienza en:

3D
7H
31M
40S
Curso de Programaci贸n Orientada a Objetos: POO

Curso de Programaci贸n Orientada a Objetos: POO

Anah铆 Salgado D铆az de la Vega

Anah铆 Salgado D铆az de la Vega

Encapsulamiento

31/37
Recursos

El Encapsulamiento es hacer que un dato sea inviolable, inalterable cuando se le asigne un modificador de acceso.

Aportes 126

Preguntas 10

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

o inicia sesi贸n.

El encapsulamiento es hacer que un dato sea inviolable, inalterable cuando se le asigne un modificador de acceso (no se trata solo de ocultar el dato sino tambi茅n de protegerlo). Un modificador de acceso define el alcance y visibilidad de un miembro de clase.
La encapsulacion es tambi茅n llamada ocultamiento de informaci贸n.
//
Algunos beneficios de encapsulaci贸n son:

  • Controlar la manera en que los datos son accedidos o modificados
  • El c贸digo es mas flexible y f谩cil de cambiar a partir de nuevos requerimientos
  • Poder modificar una parte del c贸digo sin afectar otras partes del mismo
  • Ayuda a mantener la integridad de los datos
    //
    Nota: esta informaci贸n la obtuve de la app SoloLearn (en donde puedes aprender diferentes lenguajes de programaci贸n).

Public: Todas las Clases.
Protected: En la misma Clase, paquetes, subclases.
Default: En la misma Clase y paquetes internos.
Private: Solo en la misma Clase

Encapsulamiento:

Es hacer que los datos sean inviolables, inalterable o hacer que se esconda, cuando se le asigne un Modificador de Acceso.
.
Modificadores de Acceso:

  1. Public: Es el mas permisivos de todos, Accede a todo.
  2. Protected: Podr谩 ser accedido por la clase, paquetes y subclases.
  3. Default: Permite el acceso a nivel de clses de internas y paquetes (No podremos ver las herencias si ha detener (Osea subclases))
  4. Private: Solo podr谩 ser modificado dentro de la clase.

Se puede encapsular: elementos o atributos, clases o incluso m茅todos; El encapsulamiento nos permite tener dicho elemento inalterable en la POO.

Encapsulamiento
Esta idea no solo es para mantener agrupado el c贸digo, es una capa de seguridad para proteger al mismo.
Pero te preguntaras si he definido mi clase por que debo ocultar las propiedades de esa clase dentro de mi propio c贸digo, y en realidad no se trata de hacer algo en secreto, lo que realmente se busca es reducir las dependencias de otras partes del c贸digo, para que un cambio en un lugar no caiga en cascada y me toque hacer cambios en m煤ltiples partes del c贸digo.

Hay que saber muy bien c贸mo encapsular nuestros atributos y m茅todos, por ejemplo, si queremos que un m茅todo pueda ser llamado por cualquier otro c贸digo, tendr铆a que ser public, pero si queremos que solo est茅 disponible dentro de nuestra clase o clases heredadas podr铆a ser protected, y si solo quieres que est茅 en la clase podor铆a ser private.

Usualmente los atributos suelen ser protected, ya que a veces queremos que las clases que nos hereden tengan acceso a esos atributos, pero que no puedan ser accedidos desde afuera. 驴Pero qu茅 pasa si quieres que sean accedidos desde fuera? Entonces se usan unos m茅todos getters y setters que nos permitiran manipularlos ^^

馃摝 La encapsulaci贸n nos permitir谩 tener un mayor control sobre el acceso a las propiedades y comportamientos de un objeto determinado.

S铆mbolos de encapsulamiento para diagramas UML

  • private " - "
  • public " + "
  • protected " # "
  • default " ~ "

No solo existen los modificadores de acceso public, protected default y private. C# tiene las siguientes variaciones.
Pueden especificarse los siguientes seis niveles de accesibilidad con los modificadores de acceso:

public: El acceso no est谩 restringido.

protected: El acceso est谩 limitado a la clase contenedora o a los tipos derivados de la clase contenedora.

internal: El acceso est谩 limitado al ensamblado actual.

protected internal: El acceso est谩 limitado al ensamblado actual o a los tipos derivados de la clase contenedora.

private: El acceso est谩 limitado al tipo contenedor.

private protected: El acceso est谩 limitado a la clase contenedora o a los tipos derivados de la clase contenedora que hay en el ensamblado actual.

Niveles de acceso:
Public: Todas las clases.
Protected: A nivel de Clases, paquetes, subclases.
Default: A nivel de Clases y paquetes internos.
Private: A nivel de Clases

Apuntes de esta Clase:

Encapsulamiento

Permite hacer que un dato permanezca inviolable, inalterable; esto se consigue asign谩ndole un modificador de acceso. Al encapsulamiento tambi茅n se le conoce como ocultaci贸n de informaci贸n .Los modificadores de acceso son los siguientes:

  • public: es el m谩s permisivo de todos. Puede ser accedido por cualquier elemento.
  • protected: puede ser accedido a nivel de la Clase, los paquetes de la Clase y las subclases.
  • default: permite el acceso a nivel de Clases internas y paquetes. No puede ser accedido a nivel de herencia.
  • private: es el m谩s restrictivo de todos. S贸lo puede ser accedido a nivel de Clases. S贸lo puede ser modificado y accedido dentro de la misma Clase.

Estos modificadores se pueden aplicar a Clases, atributos y m茅todos.

Con el encapsulamiento se consigue no s贸lo ocultar un dato sino tambi茅n protegerlo.

Entre los beneficios del encapsulamiento estas los siguientes:

  • Permite controlar como se acceden y modifican los datos.
  • Se puede crear un c贸digo m谩s flexible y f谩cil de cambiar frente a futuros requerimientos.
  • Se pueden modificar partes del c贸digo sin que esto afecte al resto del software.
  • Permite mantener la integridad de los datos.

Mis apuntes #31

Ac谩 hay informaci贸n sobre Programaci贸n Orientada a Objetos en Python desde qu茅 es OOP, hasta herencia, encapsulation y Polymorphism.

Concepto de Encapsulamiento

No se ve verde, :V se ve amarillo

Definicion:
Es la capacidad de poder hacer privado o publico codigo, para que dependiendo de quien lo llame, este ultimo tenga el permiso o no de usarlo.
Puede ser asignado a funciones o metodos, a variables, etc. Colocandolo al inicio (Kotlin)

Ventajas:
Te permite ordenar mejor tu codigo para que asi tengas acceso a clases o metodos solo cuando lo necesites, evitando errores.
Te permite 鈥渆sconder鈥 valores de otros(private) para que no puedan ser modificados.

La profesora habla a la ligera. Dice cosas a veces que parecen sin sentido, que solo ella sabe. Ahora lo que hizo es repetir lo mismo que est谩 en el cuadro. No explica qu茅 quiere decir con acceso a 鈥渘ivel de clases鈥. No dice si solo se puede acceder desde la misma clase que lo contiene o de otras clases.

En JavaScript no existen los modificadores de acceso. Por ejemplo, si quiero dar a entender que cierto atributo es privado, pongo un 鈥淿鈥 precediendo a su nombre. Esto es solo una pr谩ctica para que las personas que lean nuestro c贸digo comprendan que no deben cambiar directamente ese atributo; para cambiarlo deber铆an usar setters, que es un concepto que imagino veremos en cursos posteriores. Tambi茅n existen los getters.

En Golang, el encapsilamiento se hace mediente el nombramiento de las variables, m茅todos, atributos, etc. Si el nombre inicia con may煤scula es 鈥減ublic鈥, si es con min煤scula es 鈥減rivate鈥:

cuando hablamos de encapsularse trata se saber el alcance que va tener un atributo o metodo, si ser谩 p煤blica lo pueden acceder, desde otra clase o si m茅todo o atributo va ser privado solo puede ser alcanzado por la misma clase no puede se utilizada en otra clase,

Muy bien explicado y en solo unos minutos

Encapsulamiento consiste en ocultar los datos, que sean inviolables e inalterables asign谩ndolos un modificador de acceso.
public: accesible para todas las clases.
protected: accesible para clases, paquetes y subclases.
default: accesible para clases y paquetes.
private: accesible solo para la clase.
Se pueden encapsular atributos, clases o m茅todos.

muy buena la clase, solo el detalle de la pronunciacion de public鈥 https://www.youtube.com/watch?v=9PQVbDSiaAM

Modificadores de acceso: *public *protected *default *private

Encapsulamiento:

Es el que nos permite que un dato permanezca inviolable, inalterable, se le asigna un modificador de acceso.

Tipos de modificadores de acceso:

Public: Visible en todas las clases.
**Protected:**Visible en clases, paquetes y subclases.
Default: Visibles en clases y paquetes.
Private: Visible en clases.

Encapsulamiento = esconder algo (atributo)

El encapsulamiento es hacer que un dato sea inviolable, inalterable cuando se le asigne un modificador de acceso (no se trata solo de ocultar el dato sino tambi茅n de protegerlo). Un modificador de acceso define el alcance y visibilidad de un miembro de clase.
La encapsulacion es tambi茅n llamada ocultamiento de informaci贸n.
////
Beneficios:
Controlar la manera en que los datos son accedidos o modificados
El c贸digo es mas flexible y f谩cil de cambiar a partir de nuevos requerimientos
Poder modificar una parte del c贸digo sin afectar otras partes del mismo
Ayuda a mantener la integridad de los datos

Basicamente el encapsulamiento nos permite tener el control de ciertas variables o metodos de nuestro codigo, permitiendo asi que solo puedan terner acceso a ciertas caracteristicas. Esto se puede ver como una caja negra donde colocas ciertos parametros de entrada, el ejecutara un proceso interno y nos dara un resultado sin que nosotros nos preocupemos de como lo hace.

He visto muchos ejemplos y explicaciones del encapsulamiento, pero es la primera vez que alguien lo explica con un ejemplo real, consistente y coherente, de tal manera que s铆 se ve la necesidad de utilizarlo en el c贸digo. Gracias Anncode!!!

El modificador de acceso public es el m谩s permisible de todos. Permite ser accedido por cualquier elementos. Por cualquier clase. Modificador de acceso protected. Puede ser accedido a nivel de los paquetes de la clase Modificador de acceso default. Acceso a nivel de clases interas y paquetes. En la herencia no podremos ver este atributo. Modificador de acceso private. Es el mm谩s restrictivo. Solo puede ser accedido a nivel de clases.

Principio de ocualtaci贸n: Cada objeto esta aisaldo del exterior. Cada objetos expone una 鈥渋nterfaz鈥 a otros objetos, que especifica como puede interactuar con otros objetos.
El aisaliemto protege a 帽as propiedades de un objeto contra la modificaci贸n de quien no tenga derecho a aaceder a ellas.
Solamente los propios m茅todos internos del objetos pueden acceder a su estado. Esto asegura que otros objetos no puedan cambiar el estado internos de un objeto de manera inesperada.

Encapsulamiento: Reunir todos los elementos que se concideren pertenencientes a una misma entidad, con el mismo nivel de abstracci贸n.

Encapsulamiento: Hacer que un dato sean inviolable o inalterable cuando se le asigna un modificador de acceso.

En java, una correccion:
El modificador de acceso default, es a nivel de paquete que funciona, no necesitas realizar herencia, si las clases estan en el mismo paquete, puedes utilizar sus propiedades y metodos, si son default. AUNQUE SE HEREDE, puedes tener acceso a los mismos, verificar para eso el caso que hemos estado haciendo, todas nuestras propiedades son default

Un peque帽o aporte:

ENCAPSULAR Es una palabra que indica 鈥溾ncerrar, introducir o incluir algo dentro de una capsula. 鈥 (RAE).
En POO 鈥溾s el mecanismo para enlazar los datos (atributos) y m茅todos (operaciones) en objetos y limitar el acceso directo a su interior. La encapsulaci贸n se refiere al empaquetamiento de datos y funciones en un contenedor Programable| (clases/*objetos) 鈥 (https://scoutapm.com/blog/what-is-encapsulation)


no entiendo porque querer hacer eso en estos programas

Muy bueno est谩 clase y hace rato estaba buscando est谩 informaci贸n

Informaci贸n resumida de esta clase
#EstudiantesDePlatzi

  • Al momento de entender nuestro problema debo tener claro que posibles inconsistencias puedo tener para as铆 prevenirlas

  • En la POO puedo esconder un par谩metro

  • Encapsulamiento = Es lograr que un dato permanezca inviolable, inalterable y para esto se le asigna un modificador de acceso

  • Encapsulamiento es sin贸nimo de esconder

  • Para esconder un dato usaremos los modificadores de acceso: Public, Protected, default y private

  • Cada uno de estos tiene un nivel de acceso a los datos

  • Public es el m谩s permisivo de todos

  • Protected puede ser accedido a nivel de clases, paquete de clases y sub clases

  • Default nos permite el acceso a nivel de clases internas y paquetes

  • Private es el m谩s restrictivo, ya que solamente nos permite el acceso a nivel de clases

Hay que saber muy bien c贸mo encapsular nuestros atributos y m茅todos, por ejemplo, si queremos que un m茅todo pueda ser llamado por cualquier otro c贸digo, tendr铆a que ser public, pero si queremos que solo est茅 disponible dentro de nuestra clase o clases heredadas podr铆a ser protected, y si solo quieres que est茅 en la clase podor铆a ser private. Usualmente los atributos suelen ser protected, ya que a veces queremos que las clases que nos hereden tengan acceso a esos atributos, pero que no puedan ser accedidos desde afuera. 驴Pero qu茅 pasa si quieres que sean accedidos desde fuera? Entonces se usan unos m茅todos getters y setters que nos permitiran manipularlos ^^

RESUMEN CLASE 31:
ENCAPSULAMIENTO

I. Para que un dato permanezca:

  • Inviolable

  • Inalterable, se le asigna un modificador de acceso

II. Modificadores de acceso:

  • public: Todas la clases

  • protected: Clases, Paquetes y Subclases

  • default: Clases y paquetes

  • private: Clases

Genial 馃槃.

Encapsulamiento

  • Significa reunir a todos los elementos que pueden considerarse pertenecientes a una misma entidad, al mismo nivel de abstracci贸n. Esto permite aumentar la cohesi贸n de los componentes del sistema. Algunos autores confunden este concepto con el principio de ocultaci贸n, principalmente porque se suelen emplear conjuntamente.

  • La encapsulaci贸n: Se refiere a la capacidad de agrupar y condensar en un entorno con l铆mites bien-definidos distintos elementos. Cuando hablemos de encapsulaci贸n en general siempre nos referiremos, pues, a encapsulaci贸n abstracta.

  • Hay que poner l铆mites (la encapsulaci贸n), y dentro de esos l铆mites vamos a meter, a saco, todo lo relacionado con lo abstra铆do: no s贸lo datos, sino tambi茅n m茅todos, comportamientos, etc.

  • La encapsulaci贸n define los niveles de acceso para elementos de esa clase. Estos niveles de acceso definen los derechos de acceso para los datos, permiti茅ndonos el acceso a datos a trav茅s de un m茅todo de esa clase en particular, desde una clase heredada o incluso desde cualquier otra clase. Existen tres niveles de acceso:

  • 路 p煤blico: funciones de toda clase pueden acceder a los datos o m茅todos de una clase que se define con el nivel de acceso p煤blico. Este es el nivel de protecci贸n de datos m谩s bajo

  • 路 protegido: el acceso a los datos est谩 restringido a las funciones de clases heredadas, es decir, las funciones miembro de esa clase y todas las subclases

  • 路 privado: el acceso a los datos est谩 restringido a los m茅todos de esa clase en particular. Este es nivel m谩s alto de protecci贸n de datos

馃馃馃
El encapsulamiento es hacer que un dato sea inviolable, inalterable cuando se le asigne un modificador de acceso (no se trata solo de ocultar el dato sino tambi茅n de protegerlo). Un modificador de acceso define el alcance y visibilidad de un miembro de clase.

Algunos beneficios de encapsulaci贸n son:
Controlar la manera en que los datos son accedidos o modificados
El c贸digo es mas flexible y f谩cil de cambiar a partir de nuevos requerimientos
Poder modificar una parte del c贸digo sin afectar otras partes del mismo.

En C#, si no especificas en modificador de acceso, ser谩 de tipo Private

  • Modificadores de acceso

Naranja: Alcanze
Gris: Restriciones

Public

Protected

Default

Private

Hace rato que no usaba Java pero le tengo cari帽o fue el primer lenguaje serio que aprendi por que me interesaba Android.

class Car{
    Integer id;
    Account driver;
    String license;
    private Integer passengers;

    public Car(String license , Account driver){
        this.license = license;
        this.driver = driver;
    }
    public void setPassengers(Integer passengerValue){
            this.passengers =  passengerValue;
    }

    public Integer getPassenger(){
        return this.passengers;
    }
    
    void printDataCar(){
        System.out.println("License: " + this.license + " conductor: " + this.driver.name + " Passengers: " + this.passengers);
    }

}

El encapsulamiento es hacer que un dato sea inviolable, inalterable cuando se le asigne un modificador de acceso (no se trata solo de ocultar el dato sino tambi茅n de protegerlo). Un modificador de acceso define el alcance y visibilidad de un miembro de clase.
La encapsulacion es tambi茅n llamada ocultamiento de informaci贸n.
//
Algunos beneficios de encapsulaci贸n son:

Controlar la manera en que los datos son accedidos o modificados
El c贸digo es mas flexible y f谩cil de cambiar a partir de nuevos requerimientos
Poder modificar una parte del c贸digo sin afectar otras partes del mismo
Ayuda a mantener la integridad de los datos
//
Nota: esta informaci贸n la obtuve de la app SoloLearn (en donde puedes aprender diferentes lenguajes de programaci贸n).

A mi me pasa que cuando se nombran varibles en ingles se me hace mas dificil entender ya que confundo esas variables con posibles palabras reservadas del programa.

Encapsulamiento


El encapsulamiento es hacer que un dato se inviolable, o inalterable cuando se le asigne un modificador de acceso. Es nos ayudar谩 a que no puedan meter datos que alteren la l贸gica de nuestro negocio.

Para esconder datos vamos a utilizar los modificadores de acceso:

  • Public 鈫 Puede ser accedido por todos, o se谩 por cualquier elemento o clase.
  • Protected 鈫 Podr谩 ser accedido a nivel de la clases, paquetes y Subclases (las clases hijas 鈫 clases padres).
  • Defaulf 鈫 Este nos permite el acceso a nivel de clases y paquetes. O sea, que a nivel de herencia no puede ser accedido.
  • Private 鈫 Solo puede ser accedido a nivel e clases, esto quiere decir, que solo puedes ser modificado a nivel e la clase.

Modificadores de acceso

que es encapsulamiento

Modificadores de Acceso:

  • Public: Es el mas permisivos de todos, Accede a todo.
  • Protected: Podr谩 ser accedido por la clase, paquetes y subclases.
  • Default: Permite el acceso a nivel de clses de internas y paquetes (No podremos ver las herencias si ha detener (Osea subclases))
  • Private: Solo podr谩 ser modificado dentro de la clase.

La encapsulacion es tambi茅n llamada ocultamiento de informaci贸n.

encapsulamiento en sus propiedades que no sea modificable en el proceso de ejecuci贸n

鈥淐onstant鈥 tambien puede servir para el encapsulamiento?, por que ya no se cambia el valor despues de haberlo asignado y es una manera de protegerlo, Corriganme si me equivoco

  • Public: Todas las Clases.
  • Protected: En la misma Clase, paquete y subclases.
  • Default: En la misma Clase y paquetes internos.
  • Private: Solo en la misma Clase.
    馃挌

Encapsulamiento en Python

class Coche:
    #Estado inicial de la clase. Metodo constructor
    def __init__(self):
        # el "__" hace que el atributo no sea accesible desde fuera de la clase
        self.__largoChasis = 250
        self.__anchoChasis = 120
        self.__ruedas = 4
        self.__enmarcha = False

    def arrancar(self, arrancamos):
        self.__enmarcha = arrancamos

        if self.__enmarcha:
            chequeo = self.__chequeo_interno()

        if self.__enmarcha and chequeo:
            return "El coche esta en marcha"
        elif self.__enmarcha and chequeo == False:
            return "Algo ha ido mal en el chequeo"
        else:
            return "El coche esta detenido"

    def estado(self):
        print(
            "El coche tiene ", self.__ruedas, 
            " ruedas. Un ancho de ", self.__anchoChasis, 
            " y un largo de ", self.__largoChasis
            )

    #usar"__" para encapsular el metodo, igual que una variable
    def __chequeo_interno(self):
        print("realizando chequeo interno")

        self.gasolina = "ok"
        self.aceite = "ok"
        self.puertas = "cerradas"
        
        if self.gasolina == "ok" and self.aceite == "ok" and self.puertas == "cerradas":
            return True
        else:
            return False

#Instanciando la clase Coche
miCoche = Coche()
print(miCoche.arrancar(True))
miCoche.estado()

print("........A continuacion creamos el segundo objeto.......")

miCoche2 = Coche()
print(miCoche.arrancar(False))
miCoche2.estado()

Encapsulamiento en python: Se utiliza 鈥淿_鈥 mas el atributo, de esta manera los valores de este atributos estaran encapsulados y no pueden ser modificados por fuera es decir pasarian a ser estaticos. Este encapsulamiento tambien aplica para los metodos.
|
IMPORTANTE Debera estar mencionada en todos los lugares donde se declare el atributo o metodo

La t茅cnica de Getter y Setters que se explican en el video 31, se pueden usar en JavaScript o en Python?

Encapsulamiento en pocas palabras Tu no has Visto nada...

Encapsulamiento

Hacer que un dato permanezca inviolable, inalterable, se le asigne un modificador de acceso.

Modificadores de acceso:

  • Public: Todos
  • Protected: Clases, paquetes y subclases
  • Default: Clases y paquetes
  • Private: Clases

Encapsular es proteger un dato para que no sea corrompido.

Existen tres niveles de acceso para el encapsulamiento, los cuales son:
P煤blico (Public): Todos pueden acceder a los datos o m茅todos de una clase.
Protegido (Protected): son accesibles dentro de su clase y por subclases.
Privado (Private): s贸lo para la propia clase.

Concepto de Modificadores de Acceso.

El rol que juega el encapsulamiento es muy importante en poo.

Magistraaaaaaaaaaaaaaaaaaaaaaaaaaaaaaal

Vaya!!!

pasenme el diagrama final uml por fa.

Veo mas pragm谩tica (y menos pretenciosa) esta soluci贸n, en vez de usar encapsulamiento. Aunque entiendo que pueda ser 煤til en circunstancias concretas dependiendo del proyecto.

void printCarResults()
    {   
        if(passenger > 4 || passenger < 4)
        {
            passenger = null;
            System.out.println("Para uberX no puede ser mayor ni menor a 4 pasajeros. " + passenger);
        }
        else
        {
        System.out.println("El nombre del conductor es : " + driver.name + 
        ".\nSu numero de licencia es: " + license + " the passengers: "+ passenger);
        }
    }

馃槂

Encapsulamiento: hacer que un dato sea inviolable e inalterable cuando se le asigna un modificador de acceso (public, protected, default, private).

Encapsulamiento

Explicaci贸n sobre modificadores de acceso

genial

Interesante!

Encapsulamiento
Un dato sea inalterable cuando se le asigne un modificador de acceso.
Restricciones de las clases.
Parametros, atributos, m茅todos, clases: escondidos.
public ,protected, default, private.

dos puntos por terminar de ver el video :v

Genial explicaci贸n

Encapsulamiento: Permisos de acceso a los atributos, m茅todo o clases.

Genial, me quedo claro el termino.

El encapsulamiento permite esconder los detalles de implementaci贸n de nuestra clase (atributos y m茅todos) hacia el exterior. Estar铆a mal si un objeto permite cambiar los datos escribiendo directamente sobre sus atributos.

cuando hago run en Java me aparaece en el DEBUG CONSOLE Error: no se ha encontrado o cargado la clase principal Main

El encapsulamiento

Excelente, este encapsulamiento nos permite tambi茅n que para cuando cambien cosas poder modificar solamente la clase donde este atributo se encuentra

Definicion del encapsulamiento minuto 4:00.

Clase muy importante para poder controlar quien puede o no acceder/pueda ver a los atributos de una clase.

Definici贸n de encapsulamiento.

El default rompe el concepto de herencia,
el private el m谩s restrictivo solo puede ser accedido a nivel de clases, el protected, accedido a nivel de clases y paquetes

Estupenda clase instructora Anah铆, entonces el encapsulamiento va abarcar tanto el grado de visibilidad como el de acceso que posee un elemento de la aplicaci贸n y este elemento puede ser una clase, m茅todo o un atributo.

Encapsulamiento, existen 4 tipos:
+ PUBLIC - Todas las clases (accedido por todos)
+ PROTECTED - Solo en la clase, Paquete de la clase y Subclases (clases hijas) de la clase
+ DEFAULT - Solo en la clase y Paquete de la clase
+ PRIVATE - Solo en la clase

Oh tremendo, mi pregunta es, si se encapsula un dato de manera 鈥減rivate鈥 solo rompe la herencia en las clases hijas?

Ya aprend铆 la diferencia entre public, protected, default and private.

No se si alguien me pueda ayudar.
Cuando trabajamos con la familia de car en la clase Car.java heredamos driver de la clase Account.java pero en la clase Car.java no esta declarado ese driver no me quedo claro esa parte y de esto nace otra interrogante en la clase Account.java tengo declarado email y cuando creo la clase Paypal.java tengo que declarar email o tambien lo puedo heredar de Account.java.
Por favor si me podrian ayudar.
Gracias

Tan necesario para evitar la trampa.

Clara explicaci贸n.

gracias quedo super entendido con el diagrama

En Python no hay variables/m茅todos privados. En su lugar, por est谩ndar de PEP8, se agrega uno o dos caract茅res de espaciado para indicarle a otros desarrolladores que no deber铆a utilizar esa variable/funci贸n:
_foo = 0

def __foo_function():