面向过程:C语言
当开发一个功能时,看中的是中间的过程,每一个过程中的每一个步骤都需要自己去做
1.面向对象
:JAVA
当开发一个功能时,不看中具体的过程和步骤,看中是谁能帮我去完成这样事,找人帮我去做。
2.成员变量和局部变量的区别
(1)定义位置不同
成员变量定义在类内部方法之外
局部变量定义在方法内部
(2)作用域不同
成员变量作用在类内部
局部变量作用在方法之内
(3)内存中的位置不同
成员变量保存在堆里面
局部变量保存在栈里面
(4)默认值不同
成员变量有默认值
局部变量没有默认值
(5)修饰符不同
成员变量访问修饰符有四个,private 缺省 protected public
局部变量没有修饰符,默认与方法的修饰符相同
3.参数类型
可以是基本数据类型,也可以是引用数据类型
(1)基本数据类型传递:传递的是值的副本
(2)引用数据类型传递:传递的是堆里面的地址值
4.实际举例理解类和对象***
:造车。
(1)开始造车前,需要有图纸(类)
汽车图纸包含两部分:
- 属性:颜色 品牌 价格 长度 宽度
- 行为:跑
(这就相当于类,对应类里边也有两部分:)
- 成员变量(属性):直接在类里面定义
- 成员方法(行为):把static去掉就是成员方法
public class Car {
//成员属性
//颜色
String color;
//品牌
String brand;
int price;//价格
int length;//长度
int width;//宽度
//成员方法(行为)
public void run(){
System.out.println("一辆颜色是:"+color+",品牌是:"+brand+",价格:"+price+
",长度:"+length+",宽度是:"+width+"的小汽车,在大路上嘟嘟的跑");
}
(2)开始造车(对象)去使用类
一个 类 通常情况是 不能直接使用 的,就 类似于 汽车 图纸,他是 不能够直接跑 的,如果想 使用 这个 类,就 必须 根据类去 创建一个 真正的 对象去使用。
就类似于根据汽车图纸去造一辆一辆的小汽车。
(3)怎么去创建一个类的对象?
类名 对象名=new 类名();
(4)怎么调用属性呢?
对象名.属性名;
如果属性没有赋值,将会有一个,默认值
(5)怎么调用方法
对象名.方法名();
public class TestCar {
public static void main(String[] args) {
//创建一个汽车对象
Car car=new Car();//创建了一个汽车对象
//给属性赋值:
car.brand="五菱宏光";
car.color="白色";
car.length=10;
car.width=3;
car.price=5000000;
System.out.println(car.brand);
//调用方法
car.run();
//创建第二辆汽车
Car car1=new Car();
car1.brand="奥拓";
car1.color="黑色";
car1.length=3;
car1.width=2;
car1.price=50000;
car1.run();
//建一个car2,把car1的属性直接赋值给car2,也是可以的。
/**类似于 int b=2;
* int a = b;
*/
Car car2=car1;
car2.run();
}
}
类的实例化:
- **课下练习
创建一个狗类
属性:名字 年龄 体重 颜色 种类
方法 :吃饭 睡觉 摇尾巴