面向过程
面向过程是 分析出解决问题所需要的步骤 然后把步骤一一实现
面向对象
面向对象 是对整体进行分析,进行分类
面向对象不能取代面向过程,它们两个相辅相成
java类
类是一个模板 他是描述某一类事物(对象)属性和行为的集合
表示一个客观世界某类群体的一些基本特征抽象
类的结构
成员变量:事物属性的描述;
方法:事物的行为;(可以做的事情)
构造方法:用于创建对象;
内部类: 即在类体中声明的类。
块:一段没有名称的代码块
类的声明格式
[访问权限修饰符] [修饰符] class 类名{
成员变量
方法声明格式为[访问权限修饰符] [修饰符] void/数据类型 方法名(){
return 返回值;
}
}
java对象
对象是类的一个实例 以类为模板在内存中创建实际存在的案例
类 如果是汽车图纸
对象 相当于 实际存在的一辆汽车
Car bm = new Car();
Car bm:使用Car类作为类型声明一个变量bm
new Car():使用new + Car类构造方法创建对象.
同一类的每个对象有不同的成员变量存储空间。
同一类的每个对象共享该类的方法。
总结类和对象
类是一类事物的抽象概念,是一个模型.
对象是由这个模型所创造的一个个具体存在的,实实在在存在的实例.
所以创建对象的过程也叫实例化对象.
现实生活中先有对象后有类,而编程时先设计类后创建对象.
成员变量:
成员变量是定义在类中,方法体之外的变量。
成员变量可以使用Java语言中任何一种数据类型(包括基本类型和引用类型)。
在定义成员变量时可以对其初始化,如果不对其初始化,Java使用默认的值对其初始化。
成员变量在创建对象的时候会从类中复制一份到对象中。
成员变量可以被类中方法、构造方法和特定类的语句块访问。
成员变量的作用范围为整个类体。
局部变量:
在方法、构造方法或者语句块中定义的变量被称为局部变量。
局部变量可以使用Java语言中任何一种数据类型(包括基本类型和引用类型)。
局部变量在使用前必须初始化赋值。
变量声明和初始化都是在方法中,方法结束后,变量就会自动销毁。
构造方法
构造方法是用来创建对象
构造方法特点:
1.构造方法名与类名相同
2.没有返回值 不需要使用void修饰
每个类中默认有一个无参的构造方法
也可以定义一个有参数的构造方法 一旦定义了有参数的构造方法 默认无参的就会失效
如果还需要使用默认无参的 就必须要显示的声明
一个类中如果要有多个构造方法 通过方法的参数区分
方法重载
方法的重载是指同一个类中具有相同的名字,但参数不同的多个方法。
1.数量不同
2.类型不同
3.顺序不同
调用时,会根据不同的参数表选择对应的方法。
注意:方法重载跟方法的返回值类型没有任何关系
public class Overload {
public int max(int a,int b){
if(a>b){
return a;
}
return b;
}
public int max(int a,int b,int c){
if(a>b&&a>c){
return a;
}
else if(b>a&&b>c){
return b;
}
else return c;
}
public double max(double a,double b){
if(a>b){
return a;
}
return b;
}
public double max(double a,double b,double c){
if(a>b&&a>c){
return a;
}
else if(b>a&&b>c){
return b;
}
else return c;
}
}