面向对象回顾以及继承

this 关键字:
1.区分成员变量和同名局部变量
2.构造里面可以调用其他的构造函数 this();
访问修饰符:
public : 公共的 : 无论内部或外部都能访问
protected : 受保护的
default : 默认的
private :私有的,只有在该类的内容才能访问

封装:主要是针对成员变量的封装
封装的实现:
通过访问修饰符的限制实现。
把成员变量设置为私有的,并且为成员变量提供共有的set和get方法进行
对外访问。

构造方法:
实例化类对象用的方法
通过new 关键字调用,在内存中创建空间,把空间内存地址指向实例化对象。

构造方法可以定义多个。
析构方法:
释放对象空间的。
GC垃圾回收机制在回收资源之前调用。
一般情况下,不用处理,系统会自动调用。

面向对象的继承:存在继承关系的类,被继承的类称为父类,继承的类为子类;

范围:1.private修饰的变量不能被继承,private以外的可以被继承;

2.private修饰的成员方法不能被继承,private以外的成员方法可以被继承;

3.构造方法不能继承。

子类和父类的关系: is a 属于。

extens:关键字,表示类的继承关系。

Object类:
超类:所有的类都直接或间接继承了Object类。
boolean equals(Object obj);
int hascode();
也可以称之为:万类之父。

属性的隐藏:当子类定义了和父类相同的成员变量的时候,父类的成员变量会自动隐藏。

super关键字:用于指向父类的引用,代表父类的实例化对象。

                 super关键字在子类的构造器或方法中使用。

                1.super([参数列表]):调用父类的构造函数,在子类构造函数中使用;
                2.通过super关键字调用父类成员变量;
                3.通过super关键字调用父类的成员方法。

this关键字:当前类的一个内置对象,this实例化的对象的引用。

               作用:1.this([参数类别]); 调用当前类的构造函数;

                         2.区别成员变量和名称相同的局部变量;

                         3.通过this关键字调用成员方法

多态:面向对象中,一个方法的多种心态。

方法的重载:

 public void add(int i,int j){
   int sum = i + j;
   System.out.println("求和:" + sum);
  }



public void add(int i,int j, int k){
   int sum = i + j + k;
   System.out.println("求和:" + sum);
  }

1.方法名相同 2.参数不同:参数个数,参数类型,不同 3.必须在一个类中

方法的重写:

            1.存在于继承关系的类中  子类--父类

            2.方法名,参数列表,参数类型,返回至完全一致

            3.访问修饰符子类必须大于或等于父类

            4.@Override :注解,代表方法的重写

方法的调用:根据new关键字后面调用的类的实例确定谁的方法。

面试题:

   方法的重载和重写有什么区别?

   1.方法的重载必须在同一个类中,方法的重写存于继承关系的子类和父类中

   2.方法的重载是各方法的参数列表不同,重写的参数完全一样

   3.权限(访问)修饰符,重载的访问修饰符完全一样,重写的方法的子类的访问修饰符大于或等于父类权限修饰符!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值