java2.面向对象编程

  Java面向对象编程—构造方法(函数)

前面我们在创建人类的对象时,是先把一个对象创建好后,再给他的年龄姓名属性赋值,,现在要求,在创建人类的对象时,就直接指定对象的年龄和姓名。

可以定义人类的时候,定义一个构造方法即可。

构造方法是类的一种特殊的方法,它的主要作用是完成对新对象的初始化。有以下几个特点

1、构造方法名和类名相同

2、构造方法没有返回值

3、在创建新对象时,系统自动调用该类的构造方法

4、主要作用是完成对新对象的初始化

5、一个类可以指定多个构造方法

6、每个类都有一个默认的构造方法(若程序员没有定义构造方法,那么系统会自动生成一个默认的构造方法比如Cat类)

Public Cat(){

};

当创建一个Cat的对象时,Cat cat=new Cat();

默认的构造函数(方法)会被自动的

public class gouZfangF {

public static void main(String[] args){

Cat cat0=new Cat(3,"小魔");

Person p=new Person(cat0, 32, "张三");

p.name();

p.cat.name();

 

Child child0=new Child(3, "小王");

child0.joinGame();

Child child1=new Child(4, "小宋");

child1.joinGame();

Child child2=new Child(2, "小花");

child2.joinGame();

System.out.println("共有"+child0.total);

}

}

//定义一个主人类

class Person{

int age;

String name;

Cat cat;//引用类型

public Person(Cat cat,int age,String name){

this.age=age;

this.name=name;

this.cat=cat;

}

public void name(){

System.out.println("名字是"+this.name);

}

}

//定义一个小孩类

class Child{

int age;

String name;

//total是静态变量,因此,它可以被任何一个对象名所访问

static int total=0;

public Child(int age,String name){

this.age=age;

this.name=name;

}

public void joinGame(){

total++;

System.out.println("有一个小孩加入");

}

}

//定义一个猫类

class Cat{

int age;

String name;

public Cat(int age,String name){

this.age=age;

this.name=name;

}

//显示猫的名字

public void name(){

System.out.println("名字是"+this.name);

}

}

 

调用

猜你喜欢

转载自blog.csdn.net/weixin_42666837/article/details/81139092