一、理解“类”
1.“类”构造“对象”、“对象”是“类”的实例
2.“类”是一些列如何构造“对象”的计划
3.“类”是逻辑抽象,直到类的对象被创建时,在内存中才会有“类”的物理表示
4.“类”的方法和变量成为“类”的“成员”。数据成员也被称为实例变量。
5.类一般不存储与之无关的信息
二、定义“类”
1.例子:开发一个汽车信息的类,该类名为Vehicle。它存储了三个数据成员(实例变量):载客数量passengers、油箱总量fuelcap、耗油均值mpg。这个类只包含数据不包含方法。
①class定义创建一个新数据类型:
class Vehicle{
int passengers;
int fuelcap;
int mpg;
}
②创建vehicle对象:minivan成为Vehicle的一个实例(对象)
Vehicle minivan=new Vehicle();
每次创建类的实例时,都是在创建 包含类定义的实例变量副本 的对象。因此,每个Vehicle对象都会包含实例变量passengers、fueclcap、mpg的副本。
访问这些变量,用点运算符将对象名和成员名链接在一起——
minivan.fuelcap=16;
接下来书中说了每个对象里的变量的互异性。比如Vehicle类中的大卡车对象中的载客、油耗变量,和Vehicle类中的小轿车对象中的载客、油耗变量,名字虽相同,但实际内容不同。每个对象都有副本。
三、如何创建对象
Vehicle minivan=new Vehicle();
解释:1.该代码是声明了一个Vehicle对象。该声明有两个功能:①声明一个名为minivan的对象、②创建了对象的一个实际的副本,并把对象的引用赋给了minivan。
2.这些由new运算符完成的。New运算符为对象动态分配内存,并返回一个对它的引用。该引用是由new分配的对象在内存中的地址。然后把引用存储在变量中(把地址存储在变量中??)。在Java中必须动态分配所有类的对象。
四、引用变量和赋值
Vehicle car1=new Vehicle();
Vehicle car2=car1;
car1.mpg=26;
syso:car2.mpg和car1.mpg//都是26
解释:把car1赋给car2使car2也指向car1指向的对象。因此,既可以通过car1操作对象,也可以通过car2操作对象。
Vehicle car1=new Vehicle();
Vehicle car2=car1;//Vehicle car2:把car2声明为对Vehicle类型对象的引用
Vehicle car3=new Vehicle();
car2=car3;//car2和car3都指向同一个对象
五、方法(c语言中的函数)
方法格式:
返回的数据类型 名称层(参数列表)
代码太长就不呈现了,笔记一下要注意的几点
1.方法要包含在类中。
2.方法中的对象,没有运用到点运算符。原因:方法总是被与其相关的对象调用,是哪个对象都确定了,无需再用点运算符指定。
3.理解:类型的每个对象都有数据成员的副本,所以用数据成员计算时都用到了他们的副本。
主函数main中包含:类对象的声明、用方法调用对象
即:对象名.方法名();
每次调用方法时,都显示特定对象的结果。
六、返回方式
void类型函数:return语句或者到达右花括号
非void类型函数:return 值 接下来接受返回值:变量=对象.方法名();
因为在c语言中已经了解过故不过多阐述。
七、使用形参
实参:相方法传递的值
形参:在方法中接受的值
传参方法:
返回的数据类型 名称层(形参列表)
对象名.函数名(实参列表)
网友评论