---恢复内容开始---
类和对象是java编程中很重要的应该面向对象的一课,实际上可以将类看作对象的载体,它定义了对象所具有的功能。Java是面向对象的语言,因此掌握类与对象是学习Java语言的基础。
1、什么是类?
类是具有相同的属性和功能的事物的抽象的集合,在面向对象程序设计中,人们把一类事物的静态属性和动态可以执行的操作组合在一起就得到类这个概念。类是个抽象的概念,用来模拟一类事物,一旦定义了一个类,这个类就永远存在。比如:人,人包含着有中国人和外国人,他们都有行为等相同的属性,他们都具有走路,吃饭,工作等这些相同的,可动态执行的操作,所以可以定义“人类”这样一个类来包含他们相同的属性和功能。
2、怎么定义类?
package pkg1; //定义一个class类。 public class Car{ private String name; private int age; } public void brakes{ 8 }
注:1. 类名称首字母要大写,如果要定义的类名称由多个单词组成,则每个单词的首字母都要大写。
概念不多说,这篇笔记从代码入手。(为了直观的讲解,下面代码编写可能会使用到中文)
public class 车品牌{ private String 品牌; private int 速度 = 0; public void 品牌(String 品牌){ this.品牌 = 品牌; } public void 踩油门(){ if(速度<100){ this.速度 += 20; } } public void 轻踩刹车(){ if(速度>0){ 速度 -= 5; } if(this.速度<0){ this.速度 = 0; } } public void 显示速度(){ System.out.println("速度是:"+this.速度); } }
定义类的成员变量的示例如下:
就是类的属性。这种变量分为成员变量和局部变量
成员变量:
- 成员变量定义在类中,在整个类中可以被访问。
- 成员变量有默认初始化值。
局部变量:
- 局部变量只定义中局部范围内,如:方法内,代码内
- 局部变量存在于栈内存中。
注:在方法体外,类体内的声明在变量称为成员变量。
在方法体内部声明的变量称为局部变量。
在这里变量不要被外部引用,所以一般情况下使用private修饰符。
方法即对象的行为,为定义在类中的具特定功能的一段独立的小程序,方法也称为函数
方法运行后的返回结果的数据类型,
方法的特点:
定义方法可以将功能代码进行封装。
便于该功能进行复用。 方法只有被调用才会被执行。
方法的出现提高代码的复用性。
4、调用方法:
同样再写一个测试类的文件
package pkg1; class Test{ public static void main(String args[]){ 车品牌 小飞车= new 车品牌(); 小飞车.踩油门(); 小飞车.轻踩刹车(); 小飞车.品牌("宝马x5"); 小飞车.显示速度(); } }
首先先创建一个对象
语法:类名 对象名=new 类名();
大多数学习java的都会写,但是理解方面是这样的,new一个类名,就会得到一个对象,而这个对象的类型就是这个类名的类型比如说:Car car=new Car();//就是通过new一个Car类名,得到car这个对象,而这个对象就是Car类型的。
所以先new出一个对象
用对象名.方法名获取参数
运行效果
构造方法
构造方法作用就是对类进行初始化。 如果你没有定议任何构造方法的形式,程式会为你取一个不带任何参数的构造函数,那么你产生类的对像时只能用不带参数的方法,如:class a {}//没有任何构造函数。
构造方法就是与类同名的那个方法,它的作用是可以用来初始化,例子如下:
package pkg5; public class Car{ private String 品牌; private int 价格= 200000; //构造方法 public Car(String 品牌){ this.品牌 = 品牌; } public void setCar(){ System.out.println("品牌:"+this.品牌+" "+"价钱:"+this.价格); } }
测试类:
package pkg5; public class Test{ public static void main(String[] args){ Car c1 = new Car("比亚迪-唐"); //作用 c1.setCar(); } }
this关键字
每个实例方法都有一个this的关键字,他引用正在被调用的方法的所属当前对象,在你的方法引用一个实例变量时,编辑器会隐含使用的这个变量。
this关键字主要有三个应用:
(1)this调用本类中的属性,也就是类中的成员变量; (2)this调用本类中的其他方法; (3)this调用本类中的其他构造方法,调用时要放在构造方法的首行。