网站首页 > java教程 正文
1 基本概括
2 详解
封装:
是将类的某些信息隐藏在类的内部,不允许外部程序直接访问,而是通过该类提供的方法来实现对隐藏信息的操作和访问
封装的优点:只能通过规定的方式来访问数据;隐藏类的实现细节;方便加入控制语句(比如验证参数合法性);方便修改实现(比如修改了属性的类型,接口可以添加一次转换)。
继承:
继承是使用已存在的类的定义作为基础建立新类的技术,新类的定义可以增加新的数据或新的功能,也可以用父类的功能,但不能选择性地继承父类。简单概括为,父类提供共性,子类补充特殊性。
使用继承时的三个关键:子类拥有父类的所有属性和方法,但只能调用非private的属性和方法;子类可以对父类进行扩展,拥有自己的属性和方法;子类可以自己实现父类的方法。
构造器:子类不能继承父类的构造器,只能调用父类的非private构造器,使用super()。切记必须在子类构造器第一行调用。
protected 关键字:方便同一个包的类和子类访问。
向上转型:class A;class B extend A;A b = new B() 的使用,即B是A的意思。
切记谨慎使用继承,理解is-a的关系。代码重用可以考虑工具类,行为相同可以考虑接口。《Think in Java》提到:问一问自己是否需要从子类向父类进行向上转型。如果必须向上转型,则继承是必要的,但是如果不需要,则应当好好考虑自己是否需要继承。
多态:
所谓多态,就是指一个引用(类型)在不同的情况下的多种状态。也可以理解为,多态是指通过指向父类的指针,来调用在不同子类中实现的方法。
在上面提到子类可以自己实现父类的方法。例如 class A;class B extend A;class C extend A;在B 和C中分别自己实现了A的某个函数,当A b = new B() A c = new C() 时,调用b,c 相同函数可能会返回不同的行为,因为父类的引用变量指向子类对象了。
喜欢的话可以点下关注。
猜你喜欢
- 2024-11-13 Java面向对象三大特征:封装、继承、多态
- 2024-11-13 利用Java注解的简单封装,进行的一次优化
- 2024-11-13 如何封装原生的 Java NIO 以及扩展?详细到让你分分钟搞定Netty
- 2024-11-13 Java面向对象——基础2 封装、继承、多态
- 2024-11-13 想要 Spring Data JPA/MongoDB 更易用,你应该这样封装
- 2024-11-13 Java面向对象高级特性-封装(java面向对象三大特点)
- 2024-11-13 Java基础类型与封装类型的区别与联系
- 2024-11-13 java包装类的自动封装、自动拆箱和缓存
- 2024-11-13 java程序员必备的基础知识_java面向对象之封装(二)
- 2024-11-13 Java面试基础回顾03-封装(java基础面试题及答案)
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)