day10 面向对象 (上)c
封装与隐藏:
封装主要通过限定词实现:
比如,对于类中的某个变量不允许用户直接使用,而是需要通过调用方法赋值,因为有些限制(比如年龄不能为负数)
public class test{ public static void main(String[] args) { man m=new man(); //m.age=-3;不能再用这种方式调用,因为age为private,只有自己类可以使用 m.setAge(-3); m.show(); //m.age=6; m.show(); } } class man{ private int age; public void setAge(int a) { if(a>0) age=a; else { age=0; } } public void show() { System.out.println("age="+age); } }
结果:
完整的属性封装:
JAVA的四种权限(从大到小):private,缺省,protected,public
类的第三个成员(之前两个分别为属性、方法):构造器:
创建类对象:new+构造器,例如:
构造器没有返回值,有多个构造器时类似于重载决定使用哪个
赋值的先后顺序:
JavaBean为公共的,有get、set方法的可重用组件
UML类图:
this的关键字:
主要用于解决类中属性和类中方法的形参两个同名的情况
this表示当前对象
this调用构造器:
最需要注意的是调用时不能形成 “环”(你调我,我又调你)
package使用
补充:
import使用: