Java常见知识点汇总(③)——面向对象基础


面向对象三要素:封装、继承、多态①. 封装:封装的意义,在于明确标识出允许外部使用的所有成员函数和数据项,或者叫接口。②. 继承:③. 多态:基于对象所属类的不同,外部对同一个方法的调用,实际执行的逻辑不同。很显然,多态实际上是依附于继承的第二种含义的。方法签名:方法名 + 参数列表(参数类型、个数、顺序)
1.1 重写子类重写父类方法,只有实例方法可以被重写,重写后的方法必须仍为实例方法。成员变量和静态方法都不能被重写,只能被隐藏。重写实例方法:超类Parent中有实例方法A,子类child定义了与A 相同签名和子集返回类型 的实例方法B,子类对象ChildObj只能调用自己的实例方法B。方法的重写(override)两同两小一大原则:注意:
1.2 重载在同一个类中,有多个方法名相同,参数列表不同(参数个数不同,参数类型不同),与方法的返回值无关,与权限修饰符无关。编译器通过对方法签名的识别即可静态编译出不同的方法。这也是java中重载与重写的区别之一。重载只是一种语言特性,与多态无关,与面向对象也无关。多态是为了实现接口重用开发云主机域名。Java中方法是可以和类名同名的,和构造方法唯一的区别就是,构造方法没有返回值。
1.3 隐藏隐藏与覆盖在形式上极其类似(语法规则),但有着本质的区别:只有成员变量(不管是不是静态)和静态方法可以被隐藏。
1.4 成员变量超类 Parent 中有成员变量 A ,子类 Child 定义了与 A 同名的成员变量 B ,子类对象 ChildObj 调用的是自己的成员变量 B。如果把子类对象 ChildObj 转换为超类对象 ParentObj ,ParentObj 调用的是超类的成员变量 A !
1.5 静态方法超类 Parent 有静态方法 A ,子类 Child 定义了与 A 相同签名和子集返回类型 的静态方法 B ,子类对象 ChildObj 调用的是自己的静态方法 B 。如果把子类对象 ChildObj 转换为超类对象 ParentObj ,ParentObj 调用的是超类的静态方法 A !隐藏后的方法必须仍为静态方法

相关推荐: 完美支持中文及附件的基于libcur邮件客户端封装类

最近做了一个小项目需要在windows c++ 环境下,发送邮件在网上查了很多,大部分编译不成功,少部分中文开发云主机域名乱码参考了 libcurl实例及,网友的源码,努力了两天终于得到了比较圆满的结果从 https://github.com/honeylig…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 05/06 17:47
下一篇 05/06 17:47