面对对象
java中可以说万物皆对象,一个班里的每一个学生,生活中的每个生活物品等等都是一个对象。
类与对象
类:是将一类具备相同特征事物的抽象描述
类的声明:
【修饰符】<class> 类名称{
【属性】
【方法】
}
对象的声明:
类名 引用名 = new 构造器();
构造器
用于对象的初始化操作(赋值,开启资源)
构造器语法
【修饰符】 类名([参数..]){
[执行体]
}
注意:
构造器名必须跟类名保持一致
构造器不包含任何类型的返回值
一个类可以存在多个构造器,但是必须保证每个构造器中的参数个数,顺序或者类型,任意有一项不一致
任何一个类中都存在一个默认的无参构造器;一旦有自定义构造器,则该默认的构造器会被覆盖
面对对象之封装
面对对象的程序设计语言通常都包含三大特征:
1.封装 2.继承 3.多态
封装
封装是面对对象中最常见的一种也是最简单的,java中通过将一个对象的信息(属性和行为)封装到类中,避免让外界过多的关注类中的实现细节,使得外界访问程序变得简单
优点:
提高了对象数据的安全性
提高了代码的可复用性
提高类的内聚性,降低耦合度
继承
java中通过继承,可以提高类的可扩展性,以及代码的可复用性
语法
[修饰符] class 子类名 <extends > 父类名称{
//属性
//方法
}
注意:
java中一个父类可以存在多个子类
一个子类只能有一个父类
java中虽然不能多继承,但是可以使用多重继承达到多继承的目的
子类继承父类之后,子类中可以使用父类的非私有元素(属性,方法)
子类除了可以直接使用父类中的非私有元素外,还可以扩展自己的信息
在创建子类对象时,通常是先调用父类构造器(不是创建父类对象)完成初始化操作,再执行子类构造器完成子类对象的创建以及初始化(默认构造器)
如果父类不存在默认构造器,则子类中需要通过super显示的调用父类的其他构造器
构造器不能被继承,只能被子类调用(初始化子类时)