JAVA语言的主要特点(简单性,面向对象,安全性,平台无关性,多线程)。
面向对象程序设计有以下几个特点:封装,继承,多态。
类:是封装对象的属性和行为载体。
类体的定义
public CalssName {
成员变量
构造器(构造方法)
成员方法
}
ll成员变量用于存储对象的状态信息;
ll构造器用于建立对象的初始状态;
ll成员方法实现了类对象的行为,其中包括get()和set()两种方法;
Java的语言中对象的属性以成员变量的形式存在,而对象的方法以成员方法的形式存在。
构造方法的特点如下: √构造方法没有返回值。
√构造方法的名称要与本类的名称相同。
方法的一般格式
<有参方法> 类型标识符方法名 (形式参数列表){
声明部分;
语句部分;
}
在有些函数中是可以没有参数的,即:
类型标识符 函数名(){
声明部分;
语句部分;
}
方法的调用
1.调用无返回值的方法,只需要将方法作为一条语句处理即可:
方法名(实参);
2.调用有返回值的方法时,通常是把方法返回值赋予某个变量:
变量=方法名(实参);
类的主方法
主方法是类的入口点,它定义了程序从何处开始,主方法提供对程序流向的控制,其语法格式如下:
public static void main(String [] args) {
//方法体
}
主方法具有以下特性:
~主方法是静态的。要直接在主方法中调用其他方法,则该方法也必须是静态的。
~主方法没有返回值。
~主方法的形参为数组。
JAVA 标识符命名规则:
Java的标识符可以是字母,数字,$ _(下划线)的组合,但不能以数字开头,也不能是Java的的关键字,通常命名规范如下:
包名:全部小写(如networkfile)。
类名:每个单词的首字母大写(如NetworkFile)。
变量名和方法名:第一个单词字母小写,以后每个单词首字母大写,如networkFile。
常量:全部使用大写字母,单词间用下划线隔开,如NETWORK_FILE。
局部变量:在成员方法内定义的变量
(变量的作用域)局部变量的在方法被执行时创建,在方法执行结束时被销毁。
局部变量在使用时必须进行赋值操作或被初始化,否则会出现编译错误。
静态变量,常量,和方法
由静态修饰的变量,常量和方法被称作静态变量,常量和方法。
~在静态方法中不可以使用此关键字。
~在静态方法中不可以直接调用非静态方法。
对象
在的Java语言中通过新的操作符来创建对象其语法格式如下:
Test test=new Test();
Test test= new Test(“a”);
创建对象语法中的参数说明:
Test 类名
test 创建测试类对象
new 创建对象操作符
“a” 构造方法的参数
对象的比较
在该类中说明了“==”运算符与等于()方法的区别。
运行结果如图所示:
从结果可以看出“==”运算符与equals()方法的比较内容是不相同的。equals()方法是String类中的方法,它用于比较两个对象引用所指的内容是否相等;而“==”运算符比较的是两个对象引用的地址是否相等。
接口,继承与多态
JAVA语言只支持单继承,即一个类只能与一个父类。为了实际应用问题,JAVA提供语言了接口来实现类的多重继承。
接口的使用
使用接口来定义一个接口定义接口的基本语法格式如下:
[修饰符] interface 接口名[extends 父接口名列表] {
[public] [static] [final] 变量;
[public] [abstract] 方法;
}
接口在定义之后,就可以在该类中实现该接口在类中实现接口可以使用工具关键字,基本语法格式如下:
[修饰符] class <类名> [extends父类名] [implements接口列表] {
}
类的继承
在JAVA语言中,继承通过扩展关键字来实现。即在子类的声明中,通过使用扩展关键字来显示地指明其父类。
继承中的重写
如果子类的方法名与父类的方法名相同(返回值类型,参数列表也相同),那么子类就不能继承父类的方法,此时,称为子类的方法重写了父类的方法(重写也可以称为覆盖)。当子类中声明的成员变量与父类的成员变量相同,则子类不能继承父类的成员变量,此时称子类的成员变量隐藏了父类的成员变量。
这时,如果想在子类中访问父类被子类隐藏的成员方法或变量,可以就使用super关键字。
超级关键字主要有以下两种用途:
~调用父类的构造方法;
~操作被隐藏的成员变量和被重写的成员方法;
多态
在Java的语言中,通常使用方法的重载(重载)和重写(覆盖)实现类的多态性。
方法的重载是指在一个类中出现多个方法名相同,参数个数或参数类型不同的方法,则成为方法的重载(在进行方法的重载时,方法返回值的类型不能作为区分方法的标志)。