面向对象编程(OOP:Object-OrientedProgramming)

个人理解:就是把复杂的问题看作一个整体,即对象;然后再去面向过程,在对象里面去实现方法,语句啥的。

面向对象的本质就是:以类的方式组织代码,以对象的方式组织(封装)数据。

从代码运行的角度考虑是先有类后有对象。类是对象的模板。

个人理解:在编程过程中,一定是先创建一个类,然后就可以用类去创建很多个对象!妙啊!!


break和return的区别:break:跳出switch,结束循环;return结束方法,返回一个结果。

回顾方法的调用

区分:

  1. 静态方法的调用:有static关键字的方法,可以直接用类去点方法名
  2. 非静态方法的调用:没有static关键字的方法,需要先将类实例化(比如:Student student = new Student();),然后再去点方法名(比如:student.方法名();)
  3. 静态方法可以调用静态方法,非静态方法不可以调用静态方法

构造器(必须掌握)

Alt + Insert 快捷键,生成有参函数无参函数

默认存在一个无参构造方法,生成一个有参构造方法之后,默认存在的无参构造方法就没了,需要重新手动去生成它。


面向对象三大特性

  • 封装

  1. 程序设计追求“高内聚,低耦合”;高内聚就是类的内部数据操作细节自己完成不允许外部干涉低耦合就是仅暴露少量的方法给外部使用
  2. 封装(数据的隐藏):通常应该禁止直接访问一个对象中数据的实际表示,而应该通过操作接口来访问,这称为信息隐藏
  3. 记者这句话就够了:属性我私有(private),get/set
  • 继承

  • 多态


super和 this:

方法重写:重点

重写都是方法的重写,和属性无关

因为:定义的是什么类,就调用什么类的静态方法

快捷键:Alt + Insert ----->选择Override Methods...


多态

static final private 这些修饰符修饰的方法没有多态,因为它们重写都不能被重写,更别谈多态了啊!!!

个人理解:当父类引用指向子类对象时:

  1. 当某一个方法,在父类和子类中都存在,如果此时用父类创建的对于像这个方法,那么执行的就是子类中的方法;(执行的是子类对父类中的方法重写之后的同名方法);
  2. 子类中有一个独有的方法,父类中并不存在同名的方法,如果此时用父类创建的对于像这个方法,那么就会报错

instanceof(类型转换) 引用类型

个人理解:

我们学这里的类型转换,是为了在父子继承中,去使用子类中特有的方法,而不是重写的方法;

(其实就是父类不能直接使用子类中特有的方法,所以强转一下,把自己伪装成子类,然后就可以去使用子类中的方法了,哈哈,妙啊!

内容来源于网络如有侵权请私信删除

文章来源: 博客园

原文链接: https://www.cnblogs.com/niuniu-/p/14640609.html

你还没有登录,请先登录注册
  • 还没有人评论,欢迎说说您的想法!

相关课程

3781 9.8元 98元 1折