类与对象:
面向对象程序设计:将现实世界中的实体单位抽象成对象(object)
类:描述对象的数据类型,刻画一组具有共同特性的对象。(class)
任何一个对象都有所属的类,类是静态概念,对象是动态概念。
Java基本单位就是类。一个Java程序就是一个类定义,所有概念都必须封装在类中,Java不支持struct,一个类就是一个struct。
例如:
造车:
1.画图纸:
1.定义车的属性信息:color,speed,seat
2.定义车的动作:跑
2.拿图纸找工厂造车
面向对象得到世界里:
类:就是图纸
属性:这一类事物拥有的共同属性
动作:这一类事物共同能执行的功能
对象:使用类创建的具体某一东西
对象能干什么,完全取决于类如何定义。
static:对多个对象来说,静态数据成员只存储一处,供所有对象共用。静态数据成员的值对每个对象都是一样,但它的值是可以更新的。
在面向对象的世界里,变量是没有市场的,这种变量被称为引用。java分为两种数据类型:1,基本数据类型 3.引用数据类型(String和我们所创建所有的类)
public class car {
//成员变量
String color;
int speed;
int seat = 5;
//成员方法
public void run() {
System.out.println("车能跑");
}
public static void main(String[] ages) {
car Ferrari = new car(); //创建对象
Ferrari.color = "绿色";
Ferrari.speed = 128;
System.out.println(Ferrari.color);
System.out.println(Ferrari.speed);
System.out.println(Ferrari.seat);
car Porsche = new car();
Porsche.color = "黑色";
Porsche.speed = 200;
System.out.println(Porsche.seat);
System.out.println(Porsche.color);
System.out.println(Porsche.speed);
}
}
this关键字:
this:当前类的对象,可以区分全局变量和局部变量。
public class car {
//成员变量
String color;
int speed;
int seat = 5;
//成员方法
public void run() {
System.out.println(this.color+"车能跑");
}
public void fly(String color) {
System.out.println(this.color+"的车在"+color+"的云里面跑");//this代指对象的
}
public static void main(String[] ages) {
car Ferrari = new car();
Ferrari.color = "绿色";
Ferrari.fly("白色"); //白色作为参数传入
}
}