面向对象的程序设计有三个主要特征,如: 封装性 继承性 多态性
封装:
不需要让外界知道的信息隐藏起来有些对象的属性及行为允许外界用户知道或使用,但不允许更改,而另一些属性或行为,则不允许外界知晓;或只允许使用对象的功能,而尽可能隐蔽对象的功能实现细节。
继承:
首先拥有反映事物一般特性的类,然后在其基础上派生出反映特殊事物的类
多态:
多态是允许程序中出现重名现象。 Java 语言中含有方法重载与成员覆盖两种形式的多态。
方法重载:在一个类中,允许多个方法使用同一个名字,但方法的参数不同,完成的功能也不同。
成员覆盖:子类与父类允许具有相同的变量名称,但数据类型不同,允许具有相同的方法名称,但完成的功能不同。
提示:
对象只有在实例化之后才能被使用,而实例化对象的关键字就是 new。
这个是 对象实例化的过程
由图中可以看出,当语句执行到 Person p 的时候,只是在栈内存中声明了一个 Person 的对象 p,但是这个时候 p 并没有在堆内存中开辟空间,所以这个时候的 p 是 一个未实例化的对象,用 new 关键字实际上就是开辟堆内存,把堆内存的引用赋给了 p,这个时候的 p 才称为一实例化对象。
访问属性:对象名称.属性名
访问方法:对象名称.方法名()