本文共 1074 字,大约阅读时间需要 3 分钟。
构造函数
1.构造函数的作用:构造一个类的对象与初始化类对象 2.构造函数的格式:public 类名(){} 3.构造函数何时被调用? 当创建一个类的对象时,动态调用构造函数。 注意:1)构造函数没有的格式中没有显示写出返回值,但是构造函数是有返回值的。 如:public void add(int a,int b){Int c=a+b;}
这样的函数才表示没有返回值,int d=add(3,4);这样的是不能编译通过的。
其实,当创建一个对象时,格式:类名 对象名=new 类名(); 其中的赋值符号“=”即充分体现了创建对象时调用构造函数,然后构造 函数返回一个地址赋值给对象名。 *扩展:计算机的存储分为硬盘,内存,闪存 硬盘(存储暂时不用的信息,可以长久保存) 内存(电脑正在运行的程序数据) 引用传递(引用指的就是变量)把一个引用的地址传递给另一个引用2)在类定义中,当没有显示写出构造函数的定义时,类中含有一个默认构造函数(隐 式),而一旦用户自定义构造函数,则隐式默认构造函数不复存在,如果需要默认 构造函数,用户需要手动写出默认构造函数。
继承 1.继承关键词:extends 2.继承的简单含义:子类直接获取父类的属性和行为 注意:1)父类的私有属性和行为不能被继承 2)父类的构造函数不能被继承 3)继承为单继承,即一个子类只能有一个父类,但是可以多层继承,即一个子类 能有一个父类和(多个)子类。通俗的说法就是,父亲可以有几个儿子,但儿子只 可能有一个父亲,和一个爷爷。 重载与重写 重载:在一个类中,类名相同但参数列表(参数个数,参数类型,参数顺序)不同的同名函 数。 重写:子类对父类的方法进行重写。 下面举一个例子:public class Father{ public void test(){}} public class Son extends Father{ public void test(){System.out.println(“23333”);}public void test(int a){a++;}}
这个例子虽然简单,但很好的体现了重写和重载的区别,重写包括函数名和参数列表还有返回值类型要和父类的一模一样,而Son已经在继承了test()方法后,又重载了test(int a)方法。
注意:1.构造函数也可以重载,不同的构造函数是为了构造不同的类对象 2.子类对父类的函数重写后,子类的重写函数将会覆盖父类的方法。在主函数调用 子类的重写方法则不会调用到父类的同名方法。