java面向对象OOP的总结

this当做构造方法使用两种思想:

  1. 面向过程思想:亲力亲为,侧重于分析其中的过程。
  2. 面向对象:所有的事情交给向相应的对象完成,侧重于如何创建对象。

类Class和对象Object

----类Class:具有相同的属性和行为的对象的集合(属性,行为)

---对象Object:对象是类的一个具体的实例,是类的具体表现。

创建对象

类名 对象名=new 构造方法(参数)

成员变量:定义在类中的变量,拥有默认值。

 生命周期:随着类创建对象,成员变量初始化,该对象回收,成员变量销毁。

局部变量:定义在方法中的变量,没有默认值,赋值后才能使用。

 生命周期:随着方法调用,局部变量初始化,方法调用结束,局部变量销毁。

方法重写override

概念:当子类继承父类后,可以对父类中非私有的方法进行拓展。

作用:重写用于子类拓展父类的某个方法。

要求:方法名,参数列表,返回值必须和父类一致。访问权限不能比父类更严格。不能抛出比父类更大的异常。

方法重载overload

概念:在一个类中,如果多个方法的方法名相同,参数列表不同。

作用:重载用于在一个类中,某个方法在不同的条件下,执行不同的内容。

要求:方法名相同。参数列表不同。

继承:子类对象可以直接访问父类中非私有的属性和方法。Java是单继承,一个子类只能有一个父类,一个父类有多个子类。任何类都是Object的子类。

封装:使用private关键字对属性进行修饰。

this当做对象使用

用法:this.属性或this.方法

这时的this,表示当前类的对象。只能在方法中使用。通常用于在方法中区分成员变量和参数。

用法:this([实际参数]);

此时的this()表示,当前类的一个构造对应的构造方法。(注:必须要写在另一个构造方法的第一行才能使用。)

Super当做对象使用

用法同this一样,但super表示父类的对象。可以通过super访问父类对象中非私有的属性和方法。

Super当构造方法使用

用法同this,表示调用父类中的构造方法。(注:只能在构造方法的第一行)

Final(是一个关键字,修饰类,方法,属性)

---修饰属性,修饰的变量称为常量,该值不能被改变

---修饰方法,不能被子类重写

---修饰类,不能被继承

Abstract(用于修饰方法和类,“抽象的”)

---抽象方法只能出现在抽象类中,不能出现在普通类中。

---抽象类中可以乜有抽象方法。

---抽象类中不能创建对象

---抽象类中的构造方法,在创建其子类对象时自己调用。

---抽象类通常需要被继承,继承后子类一定要重写抽象类中的所有抽象方法。

Interface(定义接口的关键字)

概念:如果某个抽象类中,全是抽象方法时,可以将抽象累定义为一个接口。

接口是一个完全抽象类

---接口中的方法都是被 public abstract修饰,可以不用写出来;

---接口中的属性都是被public static final修饰,可以不用写出来;

---实现了接口的实现类,要重写其中所有的抽象方法

---接口没有构造方法,不能实例化对象

---接口中的成员都是公开的。

静态成员(使用static关键字进行修饰)

--静态方法中不能使用this;静态成员无需对象参与,通过类名即可访问,也可以使用对象进行访问;静态方法中不能使用非静态成员,可以在静态方法中定义局部变量;静态代码块随着类加载而执行一次,优先于构造方法执行。

setXXX()是进行赋值,getXXX()是进行取值。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小冬帅

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值