一、类
1、类的定义
类就是把数据与相关功能封装在一起,形成一种特殊的数据结构
2、类的特点
(1)类是对象的类型
(2)具有相同属性和方法的一组对象的集合。
(3)同一个Java程序内,若定义了多个类,则最多只能由一个类声明为public,在这种情况下,文件名必须与声明称public的类名称相同
3、对象的属性:
对象具有的各种特征。
4、对象的方法:
对象执行的操作(能干什么)。
5、类和对象的关系
类是抽象的概念,仅仅是模板。而对象是一个具体实体。
二、定义类
1、类的一般结构
三、对象的创建与使用
1、创建对象
(1)声明指向由类所创建对象的变量
(2)利用new运算符创建新的对象,并指派给前面所创建的变量
例如,创建圆柱类Cylinder的对象,可用下列语法创建:
Cylinder volu ; //声明指向对象的变量
volu = new Cylinder(); //创建对象
也可合并为一句
Cylinder volu = new Cylinder(); //声明并创建新的对象,并让volu指向该对象
2、对象使用
对象名.对象成员
通过这种引用可以访问对象的成员,也可获取和修改类中成员变量的值
class Cylinder {
double radius;
int height;
double pi = 3.14;
void area() {
System.out.println("area = " + pi * radius * radius);
}
void volume() {
System.out.println("volume = " + pi * radius * radius * height);
}
}
public class demo1 {
/**
* @param args
*/
public static void main(String[] args) {
Cylinder volu ; //声明指向对象的变量
volu = new Cylinder(); //创建对象
volu.radius = 2;
volu.height = 3;
volu.area();
volu.volume();
}
}
3、参数传递
public class demo1 {
/**
* @param args
*/
public static void main(String[] args) {
Cylinder volu ; //声明指向对象的变量
volu = new Cylinder(); //创建对象
volu.setCylinder(2.5,5,3.14);
System.out.println("r = "+volu.radius);
System.out.println("h = "+volu.height);
System.out.println("area = "+volu.area());
System.out.println("volume = "+volu.volume());
}
}
class Cylinder {
double radius;
int height;
double pi = 3.14;
void setCylinder(double r ,int h ,double p)
{
pi = p;
radius = r;
height = h;
}
double area() {
return pi*radius*radius;
}
double volume() {
return area()*height;
}
}
4、匿名对象
当一个对象被创建后,在调用该对象的方法时,也可以不定义对象的引用变量,而直接调用这个对象的方法,这样的对象叫匿名对象
volu = new Cylinder(); //创建对象 volu.setCylinder(2.5,5,3.14);
改写为
new Cylinder().setCylinder(2.5,5,3.14);
当该方法执行完后,这个对象也变成了垃圾
使用匿名对象通常有两种情况:
(1)对一个对象只需要进行一次方法调用
(2)将匿名对象作为实参传递给一个方法调用