标签:style blog http color ar 使用 java strong sp
函数的重载
定义:
1、两个或多个函数在同一个类当中;
2、函数名相同;
3、参数列表不同;
例子如下:
//类文件A class A{ //以下3个为成员函数 void funA(){ System.out.println("没有参数的funA函数"); } void funA(int i){ //void为空的返回值,funA为函数名,括号内的为参数 System.out.println("带有整型参数的funA函数"); } void funA(int i ,double d){ System.out.println("带有两个参数的funA函数"); } }
//类文件A的对象testA class testA{ public static void main(String args[]){ A a = new A();//创建类A的对象a a.funA();//使用对象a调用A的函数 a.funA(10); a.funA(1,2.5); } }
构造函数:类名()
构造函数不属于成员函数,而没有返回值,构造函数名必须与类名相同。
当编译器对源文件进行编译时会检查是否有构造函数,如果没有的话,编译器会自动添加无参数,而函数体为空的构造函数。
//类文件A class A{ //构造函数没有返回值,构造函数名必须与类名相同 A(){ System.out.println("我是构造函数"); } }
//类文件A的对象testA class testA{ public static void main(String args[]){ A a = new A(); } }
成员函数的调用采用 对象 .函数名
构造函数的调用采用 new + 构造函数
构造函数的作用:
1、当我们调用构造函数时,会产生这个类的对象。
2、可自行定义构造函数为成员变量赋初值,方便对象的参数传入。例子如下:
class Person{ Person(){ } String name; int age;
Person(String n,int a){ //构造函数的重载 name = n; age = a; } }
class testPerson{ public static void main(String args[]){ //Person p1 = new Person(); //p1.name = "zhangsan"; //p1.age = 10;简化为以下代码 Person p1 = new Person("zhangsan",10); System.out.println("p1的名字是"+p1.name+",年龄是"+p1.age); } }
当类文件中已经有了自定义的构造函数,那么进行编译时,编译器就不会添加无参数的构造函数了,再通过new ()产生新的对象时则会报错。
标签:style blog http color ar 使用 java strong sp
原文地址:http://www.cnblogs.com/chavez-wang/p/4044736.html