标题:Java复习知识点(面向对象程序设计)
Java是一种以类和对象作为基本程序结构单位的面对对象程序设计语言,类和对象是程序对客观事物的抽象与模拟,类与对象的关系类似于人类与人的关系。
类是拥有相同行为特征对象的一个抽象概念,对象则为这个概念在程序运行中具体存在的个体。
extends继承父类,表示该新定义的类显式继承由“父类名”指定的类。并且该父类必须是一个已存在、可访问并且可以被继承的类。若无extends,则该类默认继承 java.lang.Object 类。
implements接口名列表,表示该新类需要通过 implements实现某个接口或者多个接口完成定义,多个接口之间用英文“,”分隔。
成员变量主要用于描述类和对象的属性状态。
初始化块主要在类和对象创建时对其进行初始化。
成员方法主要用于描述类和对象具有的行为方式(代表功能)。
对象的创建和使用:
直接方法:
类名 对象名 =new 类名()
Person p = new Person();
间接方法:
(1)对象的声明:类名 对象名
(2)对象的创建:对象名 =new 类名()
Person p;
p = new Person;
对象的 this 引用:
this 可以在类中三个位置出现:非static初始化块(普通初始化块) 构造器 非static方法(实例方法)
在构造器和初始化块中的this用来指向正在初始化的对象
在实例方法中用来指向正在调用该方法的对象
当实例成员变量在实例方法中出现时 ,默认格式为 :this.成员变量
当static成员变量 (类成员变量) 在实例方法中出现时 ,默认格式为:类.成员变量
class A{
int i;
static int j;
void f(){
this.i=100;
A.j=200;
}
}
Java语言不允许类的类成员(包括静态初始化块和类方法)中使用this引用,因为类成员是类相关的,类成员在执行时可能并不存在类的对象,或者即使存在类的对象,this也无法指定是哪一个对象。
成员变量与局部变量
成员变量,即在类里面并且在类中其他成员之外定义的变量。
用static修饰的为类成员变量(类变量),没有用static修饰的为实例成员变量(实例变量)
Java语言中所有的变量均需要被初始化之后才能使用。
局部变量,除了成员变量之外的都是局部变量
变量同名问题:
1.不允许在同一个类中出现两个及以上相同名字的成员变量,不论变量是何种数据类型,也不论变量前是否有是 static 修饰
2.允许同一个类中成员变量与局部变量同名,若存在,则在局部变量作用域内使用该变量默认为局部变量。如果要指定使用成员变量,可以通过“类名”或“this引用”来进行特别限定。
3.在某个局部变量的作用域范围之内,不允许再创建同名的局部变量。
构造器:
构造器用于创建对象并初始化对象属性的方法也叫“构造方法”。构造器在类中定义
构造器的名称必须与类名同名,包括大小写
构造器没有返回值,但也不能写void,可以有return 但是不能返回任何有效数据
构造器的修饰符只有 public protected private 或者缺省
构造器的方法体主要用来初始化对象的相关数据
构造器的调用有三种方式:new this super 通常使用new ,重载情况下可使用this,类的继承中主要使用super
方法的重载
在Java类的类体中,可以定义两个至多个相同标识的方法,只要方法的参数列表不同,即参数的数量和类型不完全相同,即构成方法的重载。(如果一个类中有多个具有相同名称但参数不同的方法,则称为方法重载。)
重载必须在同一个类中
面向对象程序设计有三大特点:封装,继承和多态。