面向对象oop

人盡茶涼 提交于 2019-12-28 12:26:37

1.三大特征

  1. 封装性,把类当中的属性和实现细节隐藏,提供程序的安全性和复用性,主要用private来表现封装。
  2. 继承性,一个类派生出另一个类,原类为父类,派生类为子类,父类是众多子类提取的共性的结果,子类拥有父类的所有功能,主要用extends关键字来表现
  3. 多态,增强软件的灵活性和重用性,具体表现有重载、重写与向上造型;

2.类和对象

  1. 类指的是一个事物抽象的样子,也就是他们大概的样子, 可以理解为模板或者设计图纸。也比如人,
    类当中包括特征和行为,也就是java当中的属性和方法;
    2.对象指的是具体的实例,比如男人,
    对象会有类的具体表示,比如人具体的名字、性别、身份证等。

3.构造方法

概念:构造方法用来创建对象,并且将对象初始化
语法:修饰符+类名{}概念

4.this关键字:

概念:this代表本类对象的一个引用对象。

5.代码块:

静态代码块>构造代码块>构造方法>局部代码块

6.super关键字:

1.super代表父类的一个引用对象
2.如果在构造方法中使用,必须是第一条语句。

7.方法重写Override

概念: 子类需要重写父类的方法,在父类方法的基础之上做扩展
注意点:
1.父类中的私有方法不能被重写。
2.父类中的构造方法不能被子类继承。
3.子类重写父类方法时,修饰符要>=父类修饰符。
4.子类不能抛出父类没有的异常

8.static关键字:

1.静态变量由类名直接点出来
2.他是优先于对象之前加载的
3.静态变量修改值之后,之后创建的对象也可以访问到这个 值,所以它的资源共享的
4.静态变量只加载一次,不会重复加载,损耗内存。
5.静态方法不能访问非静态方法

9.Final:

1.final修饰的类不能被继承
2.修饰的方法不能被重载,
3.修饰的变量为常量,且不能被修改

10.异常

异常为为:errer(系统错误):这个一般是系统那里出错,我们是不好解决的
Exception(异常):解决异常的两种方式是捕获try{}catch(){}和向上抛出throws

11.权限修饰符

public	√	√	√	√protected	√	√	√	default	√	√	 	private	√

12foreacher新循环:

语法:foreacher(遍历结果的类型 结果名称:遍历的数组名称){}
作用:主要用于已遍历数组;

13.抽象类与接口

抽象类:
1、概念:通过java关键字abstract实现
2、可以修饰方法或者类
3、没有大括号的方法就是抽象方法
语法约束:
1、 抽象类中可以没有抽象方法(由子类去实现)
2、 子类继承了抽象类以后,要么还是一个抽象类,要么就把所有抽象方法都重写
3、 抽象类不可以被实例化

接口:
语法:interface定义,子类implements实现
涉及技术点:1.接口中的方法都是抽象方法
2.子类实现接口需要重写方法,不然也需要定义为抽象类
3.一个类可以实现多个接口
4.一个接口可以继承多个接口
5.一个普通类可以单继承一个父类的同时实现多个接口。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!