今天写第四章,是重点哦,面向对象的方法;类和对象;
类和对象是面向对象程序设计的核心。编写程序对一个问题的求解的过程可以看作是定义类和对象的过程。
类是模板,对象是实例;类是抽象的,对象是具体的。
对象:是构成系统的最基本的单位。
属性:描述对象的静态特征
行为:描述对象的动态特征
定义类的简单语法格式
[修饰符]class类名{
成员变量
构造方法
成员方法
}
[修饰符]可以是:[public][abstract|final]
定义成员变量:[修饰符]类型成员变量名[=初始值];
修饰符:publicprotectedprivatestaticfinal
成员变量名应是一个合法的标识符,并且应遵循编码惯例;
初始值:定义变量还可以定义一个可选的初始值。
成员方法的定义
修饰符返回值类型方法名([形式参数表]){
//方法体;
}
修饰符:publicprotectedprivatestaticabstractfinal
返回值类型:可以是Java语言的任何数据类型,如果声明了返回值类型,则方法体内必须有一个有效的return语句,该语句返回一个变量或表达式的值,变量或者表达式的类型必须与方法返回值类型匹配;如果一个方法没有返回值,则必须使用void来声明。
方法名:命名规则与变量名的命名规则基本相同,但通常建议方法名以英文中的动词开头。
构造方法:是类中的特殊的方法
构造方法的名称和类名相同;
构造方法没有返回值,不需void来声明;
当该类被实例化时,构造方法自动被调用。因此,构造函数的作用—对类对象中的成员进行初始化。
默认构造:public类名(){}
构造方法的重载:当一个类有多个重载的构造方法时,创建该类对象的语句会根据给出的实际参数的个数、参数的类型、参数的顺序自动调用相应构造方法。
修饰符public、protected、private类名(形参列表){
构造方法的方法体
}
publicclassCar{
publicStringname;//成员变量
publicStringcolor;//成员变量
publicCar(Stringname1,Stringcolor1)//构造方法
{
name=name1;color=color1;
}
publicvoidrun(Stringspeed)//其他方法
{
System.out.println(speed);
}
创建对象的根本途径是构造方法,通过new关键字来调用某个类的构造方法即可创建这个类的实例。
Carc=newCar("QQ","黄色");//给上面构造函数赋值;;
内存情况:
对象的使用格式:对象.成员变量对象.成员方法名([实参表]);//对象是主调者,用于访问该对象的变量或方法。
this的使用
Java提供了一个this关键字作为自身的引用,其作用就是在类的自身方法中引用该类自身。
publicclassCar{
publicStringname,color;
publicintoil;
publicCar(Stringname1,intgetOil){
this.name=name1; this.oil=getOil;//构造方法中的this就代表奔驰对象本身。
}
publicvoidrun(intspeed){
this.oil-=speed;System.out.println(speed);//run方法中的this就代表奔驰对象本身
}
}
publicclassTestCar{
publicstaticvoidmain(Stringargs[]){
Carc;
c=newCar("奔驰600","黑色");
c.run("100km");
System.out.println(c.name);
}
}
在同一个类中,类的成员变量是不能重名的,但方法或语句块中的局部变量是可以和类的成员变量重名的,这时候必须使用this来限定和区分是否是类变量。
this调用语句必须是构造函数中的第一个可执行的语句。
方法:
使用static修饰方法
用static修饰的方法属于这个类,因此即使没有创建该类的具体对象,类中用static修饰的方法也会存在。
类名.方法名([实参表]);
类是static方法的调用者类方法或静态方法
静态方法(类方法)属于类,或者说属于该类的所有对象所共有。因此,若创建了某个类的具体对象后,也可以通过对象名来调用类方法。对象名.静态方法名([参数表])
静态方法中不能使用this引用。
静态方法只能处理静态属性、调用静态方法。
不使用static修饰的方法属于该类的对象,不属于类。因此,方法必须使用对象做调用者:
方法不能独立定义,只能在类体里定义。
从逻辑意义上看,方法要么属于类,要么属于对象。因此,执行方法必须使用类或对象作为调用者。
同一个类中的方法相互调用时,如果被调用方法是普通方法,则默认使用this作为调用者,如果被调方法是静态方法,则默认使用类作为调用者。
方法未讲完,,,待续。。。。。
分享到:
相关推荐
本文实例讲述了Python面向对象之类和对象。分享给大家供大家参考,具体如下: 类和对象(1) 对象是什么? 对象=属性(静态)+方法(动态); 属性一般是一个个变量;方法是一个个函数; #类的属性 就是 类变量 #...
7.1 建立类和对象的模型 7.2 寻找系统中的类 7.3 确定类或对象之间关系 7.4 设计类的属性 7.5 设计类的职责 7.6 小结
本资源比较详细的分析了图书管理系统中的类和对象,让人看过之后对该图书管理系统一目了然!
c语言类和对象,第一讲pdf。
1.类和对象&封装的教学视频 2.提供源码 3.教学清晰易懂,不懂可在线问
java关于类和对象课件,类的继承 方法的重写 Object类 对象转型 多态
java编程 类和对象实现例子 包含抽象类 构造函数 继承 等
1、掌握声明类的方法,类和类的成员的概念以及定义对象的方法。 2、初步掌握用类和对象编制基于对象的程序。 3、学习检查和调试基于对象的程序。
10_类和对象视频文件
本资源主要讲述了Java语言的特性并通过实验的形式阐明了Java语言的类和对象,由于艾孜尔江亲自执笔并实践,后续仍有Java成套资源尽请关注。 Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++...
Java第4章 认识类和对象.含源代码
通过书籍,个人整理的java基础之类的对象的定义的有关知识点
类和对象的定义类是现实世界或思维世界中的实体在计算机中的反映,它将数据以及这些数据上的操作封装在一起。对象是具有类类型的变量
详细介绍了C#2005面向对象编程:类和对象
java类和对象练习题.docx
类和对象应用
C++类和对象上机练习,相当好的东西,值得参考!希望对你有用!
这个是c++类和对象的课件,与大家分享下
旺旺老师给我们详细 的讲解的 类和对象。有实例哦!
S1课程使用Java理解程序逻辑 第十一章类和对象的教学演示案例/上机练习参考答案/课后作业参考答案 相关示例提供