Java 面向对象02 封装 (黑马)

图片[1] - Java 面向对象02 封装 (黑马) - MaxSSL

人画圆:画圆这个方法应该定义在园这个类里面。

图片[2] - Java 面向对象02 封装 (黑马) - MaxSSL

人关门:是人给了门一个作用力,然后门自己关上了门,所以关门的方法是在门的类里面

图片[3] - Java 面向对象02 封装 (黑马) - MaxSSL

封装对象的好处:

图片[4] - Java 面向对象02 封装 (黑马) - MaxSSL

调用Java自带的方法举例实现:

图片[5] - Java 面向对象02 封装 (黑马) - MaxSSL

图片[6] - Java 面向对象02 封装 (黑马) - MaxSSL

图片[7] - Java 面向对象02 封装 (黑马) - MaxSSL

图片[8] - Java 面向对象02 封装 (黑马) - MaxSSL

在测试类中,对其赋值就会报错,只能在GirlFriend这个类里面赋值,不能直接的去调用

在主方法类中,不能直接访问和调用其他类中的private属性的变量。这是因为private属性的变量只能在定义它们的类中访问。但是可以通过提供公共的getter和setter方法来间接访问和修改private属性的变量。

在JavaBean类中,通常会为每个private属性提供一个公共的getter和setter方法。getter方法用于获取属性的值,setter方法用于修改属性的值。通过调用这些公共的getter和setter方法,可以在其他类中访问和修改private属性的变量。

例如,假设JavaBean类中有一个private属性的变量为name,可以通过以下方式在主方法类中调用它:

图片[9] - Java 面向对象02 封装 (黑马) - MaxSSL

图片[10] - Java 面向对象02 封装 (黑马) - MaxSSL

通过这种方式,可以访问和获取JavaBean类中的private属性的变量。

图片[11] - Java 面向对象02 封装 (黑马) - MaxSSL

图片[12] - Java 面向对象02 封装 (黑马) - MaxSSL

图片[13] - Java 面向对象02 封装 (黑马) - MaxSSL

案例:

图片[14] - Java 面向对象02 封装 (黑马) - MaxSSL

代码实现:将age设置为private属性,在main方法中就不能直接调用了

图片[15] - Java 面向对象02 封装 (黑马) - MaxSSL

图片[16] - Java 面向对象02 封装 (黑马) - MaxSSL

setName是有参无返回值的,void即可,不需要return;

图片[17] - Java 面向对象02 封装 (黑马) - MaxSSL

getName是无参有返回值的,

图片[18] - Java 面向对象02 封装 (黑马) - MaxSSL

图片[19] - Java 面向对象02 封装 (黑马) - MaxSSL图片[20] - Java 面向对象02 封装 (黑马) - MaxSSL

图片[21] - Java 面向对象02 封装 (黑马) - MaxSSL

运行结果:

图片[22] - Java 面向对象02 封装 (黑马) - MaxSSL

若对于age非法赋值,则:

图片[23] - Java 面向对象02 封装 (黑马) - MaxSSL

图片[24] - Java 面向对象02 封装 (黑马) - MaxSSL

图片[25] - Java 面向对象02 封装 (黑马) - MaxSSL

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享