Java|封装、继承、多态

骑猪看日落 2022-01-26 14:17 473阅读 0赞

什么是多态、方法重写与重载

Java的继承与实现

Java的继承与组合

https://github.com/hollischuang/toBeTopJavaer/blob/master/basics/java-basic/inheritance-composition.md

构造函数与默认构造函数

构造函数,是一种特殊的方法。 主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中。 特别的一个类可以有多个构造函数,可根据其参数个数的不同参数类型的不同来区分它们即构造函数的重载

构造函数跟一般的实例方法十分相似;但是与其它方法不同,构造器没有返回类型不会被继承,且可以有范围修饰符。构造器的函数名称必须和它所属的类的名称相同。 它承担着初始化对象数据成员的任务。

如果在编写一个可实例化的类时没有专门编写构造函数,多数编程语言会自动生成缺省构造器(默认构造函数)。默认构造函数一般会把成员变量的值初始化为默认值,如int -> 0,Integet -> null。

类变量、成员变量和局部变量

Java中共有三种变量,分别是类变量、成员变量和局部变量。他们分别存放在JVM的方法区、堆内存和栈内存中。

  1. /**
  2. * @author Hollis
  3. */
  4. public class Variables {
  5. /**
  6. * 类变量
  7. */
  8. private static int a;
  9. /**
  10. * 成员变量
  11. */
  12. private int b;
  13. /**
  14. * 局部变量
  15. * @param c
  16. */
  17. public void test(int c){
  18. int d;
  19. }
  20. }

上面定义的三个变量中,变量a就是类变量,变量b就是成员变量,而变量c和d是局部变量。

成员变量和方法作用域

public :表明该成员变量或者方法是对所有类或者对象都是可见的,所有类或者对象都可以直接访问
private:表明该成员变量或者方法是私有的,只有当前类对其具有访问权限,除此之外其他类或者对象都没有访问权限.子类也没有访问权限.
protected:表明成员变量或者方法对类自身,与同在一个包中的其他类可见,其他包下的类不可访问,除非是他的子类
default:表明该成员变量或者方法只有自己和其位于同一个包的内可见,其他包内的类不能访问,即便是它的子类

【参考文献】
多态(类实现、接口实现):https://www.cnblogs.com/chenssy/p/3372798.html
继承存在的问题(包含可以重写何种修饰的方法):《Effective Java》16
继承(包含构造函数说明):https://www.cnblogs.com/chenssy/p/3354884.html

发表评论

表情:
评论列表 (有 0 条评论,473人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Java继承 封装

    继承概念:简单说就是一个类使用extends来关联另一个已存在的类(API中的或者自己写的),Java继承是面向对象的最显著的特征之一并且一个类只能单继承(只能继承一个 类)不

    相关 封装继承

    封装: 含义: 1. java中,对象就是一个封装体。 2. 把对象的属性和服务结合成一个独立的单位,并尽可能隐蔽对象的内部细节(尤其是私有数据) 3. 目的

    相关 封装继承

    一、封装:   封装是实现面向对象程序设计的第一步,封装就是将数据或函数等集合在一个个的单元中(我们称之为类)。被封装的对象通常被称为抽象数据类型。   封装的意义:
  

    相关 继承封装

    一、封装:   封装是实现面向对象程序设计的第一步,封装就是将数据或函数等集合在一个个的单元中(我们称之为类)。被封装的对象通常被称为抽象数据类型。 封装的意义:   

    相关 继承 封装

    1.继承的好处:方便我们优化代码,提高扩展性 继承的使用: 父类的引用指向了子类的对象,如果用父类的这个引用指向了多个子类的对象,那么这个引用就可以调用这多个子类从父类

    相关 封装继承

    面向对象的三个基本特征 面向对象的三个基本特征是:封装、继承、多态。其中,封装 可以隐藏实现细节,使得代码模块化;继承可以扩展已存在的代码模块(类);它们的目的都是为了——代