Java对象的创建与使用
在面向对象程序设计中,对象及其对象的行为是基础。
我们将明白对象如何利用方法实现数据的处理、信息的展现、目标的完成等面向对象程序的设计与实现过程。
1.创建对象
对象是依附类而存在的,因此我们通常称创建某个类的对象,或某个类的实例(化)。
创建对象的语法格式
类名 对象名; //声明对象
对象名 = new 类名(); //创建对象,为对象分配内存,构造方法(构造器)
或 类名 对象名 = new 类名(); //声明与创建对象一条语句完成
Class Dog{
… …
}
Dog husky = new Dog();
2.对象的使用
对象对其成员访问的语法格式
- 对象名.成员变量;
- 对象名.成员方法([参数列表]);
示例1:
package ch06;
//定义一个普通类,用于计算圆柱体的面积、体积
class Cylinder{
double radius;
int height;
double pi=3.14;
void area(){
System.out.println("底面积="+pi* radius* radius);
}
double volume(){
return (pi* radius* radius)*height;
}
}
public class Demo{
public static void main(String[] args){
//以下两行用于创建 Cylinder对象 volu
Cylinder volu;
volu=new Cylinder();
volu.radius=2.8; //为对象的属性赋值
volu.height=5; //为对象的属性赋值
System.out.println("底圆半径="+volu.radius);
System.out.println("圆柱的高="+volu.height);
System.out.print("圆柱");
volu.area(); //对象调用方法计算并输出圆的底面积
//以下是对象调用方法作为另一个函数的参数
System.out.println("圆柱体体积="+volu.volume());
}
}
示例2:
package ch06;
class Cylinder{
double radius;
int height;
double pi=3.14;
void area(){
System.out.println("底面积="+pi* radius* radius);
}
double volume(){
return (pi* radius* radius)*height;
}
}
public class Demo{
public static void main(String[] args){
Cylinder volu1,volu2;
volu1=new Cylinder(); //创建了Cylinder 的第一个对象
volu2=new Cylinder(); //创建了Cylinder 的第二个对象
//从以下代码可以看出,两个对象的各自属性值互补干扰
volu1.radius= 2.5;
volu2.radius=3.5;
volu2.pi=3;
System.out.println("圆柱1底半径="+volu1.radius);
System.out.println("圆柱2底半径="+volu2.radius);
System.out.println("圆柱1的pi 值="+volu1.pi);
System.out.println("圆柱2的pi 值="+volu2.pi);
System.out.print("圆柱 1");
volu1.area();
System.out.print("圆柱 2");
volu2.area();
}
}
示例3:
package ch06;
//对象通过方法操作其属性
public class Demo {
public static void main(String args[]) {
Dog dog=new Dog();
dog.setBreeds("Husky");
dog.setAge(2);
dog.setColor("black");
dog.setWeight(20);
dog.myDog();
}
}
class Dog{
private String breeds;
private String color;
private int age;
private int weight;
public void setBreeds(String breeds) {
this.breeds=breeds;
}
public void setColor(String color) {
this.color=color;
}
public void setAge(int age) {
this.age=age;
}
public void setWeight(int w) {
weight=w;
}
public void myDog() {
System.out.println("My dog is : "+breeds+","+color+","+age+" years old,"+weight+"kg.");
}
}