JavaSE第二阶段
作者:互联网
面向对象:面向对象编程的本质就是:以类的方式组织代码,以对象的形式封装数据。
类
万事万物都是类,类一种抽象的数据类型,它是对某一类事物整体描述/定义,但是并不能代表某一个具体的事物.
对象 :
对象是抽象概念的具体实例
类和对象的关系
对象是类的实例化,类是对象的模板
构造方法
对象的创建就是通过构造方法来完成,其功能主要是完成对象的初始化
使用new关键字创建的时候,除了分配内存空间之外,还会给创建好的对象进行默认的初始化以及对类中构造器的调用
构造方法语法
public 类名(){}
特点
名字与类名相同
没有返回值
this关键字
在构造器中对属性进行初始化,在方法中调用,
封装
什么是封装
属性私有,对类中的属性进行包装,不直接显示出来,需要通过方法的调用,get/set
封装的作用
提高程序的安全性,隐藏了细节,增加系统的可维护性,统一接口
步骤
1.添加private修饰词
2.设置get/set方法
static关键字
静态
可修饰属性和方法
可直接通过类名调用
在静态方法中不能调用非静态方法
加载时间 和类一起加载 静态代码块
继承:子类是父类的扩展
extends
继承的特点
1只有单继承 没有多继承
2.子类和父类是is a的关系
3.子类拥有父类的所有除了私有的全部属性和方法
4.当前类被final修饰时,当前类不能被继承
方法重写-方法覆盖:需要有继承关系,子类重写父类的方法,方法名相同,参数列表相同,修饰符可以扩大,重写是为了实现父类不能实现的功能, 或者不需要的功能
方法重载:方法名字相同,参数列表不同,
super:只能出现在子类中,必须在构造方法的第一个,super和this不能同时存在
与this区别:1this指的是当前类的对象
super指的是父类的应用
单例模式
饿汉式和懒汉试
一个类中只有一个对象
一个是先加载 一个是判断空不空再进行new对象
1先将构造器私有化
2.再将new对象私有静态
3再将类中的方法进行静态私有化
多态
什么是多态:将同一个方法放在不同的对象上会产生不同的效果。
多态的特点:1.只有方法的多态,没有属性的多态
2.需要有继承关系,并且父类引用指向子类对象,方法必须重写
3.向上转型和向下转型
抽象:不允许被实例化,可以通过向上转型,指向子类示例,实现想实现的方法
abstract不能与static final 和private共存
抽象类和接口的区别:
接口:某一类需要实现的规范,规定类必须提供某些方法,
区别:抽象要被继承,接口要被类实现
接口只能做方法声明,抽象类中可以作方法声明,也可以做方法实现
接口里定义的变量只能是公共的静态的常量,抽象类中的变量是普通变量
一个类可以实现多个接口。一个子类只能继承一个抽象类
抽象类主要用来抽象类别,接口主要用来抽象功能
搜索
复制
标签:父类,对象,子类,多态,接口,JavaSE,第二阶段,方法 来源: https://www.cnblogs.com/wutonga/p/16306305.html