美文网首页Monkey Java
课程4.3之面向对象基础4

课程4.3之面向对象基础4

作者: GitOPEN | 来源:发表于2015-07-12 23:00 被阅读30次

    转发请注明出处:
    安卓猴的博客(http://sunjiajia.com)


    本节课程将学习以下内容:

    • 函数的重载
    • 构造函数的作用

    函数的重载

    在同一个类中允许函数的重名这种现象的出现,它有3个特征:

    • 两个或者多个函数在同一个类当中;
    • 函数名相同;
    • 参数列表不同。

    例子:(请动手)

    1.新建一个名称为Demo01.java的java源文件。

    class Demo01 {
      void funDemo01() {
        System.out.println("没有参数的funDemo01函数");
      }
    
      // 这个funDemo01函数重载了上面的funDemo01函数,特点为:
      // 1. 两个funDemo01函数处于同一个类Demo01当中;
      // 2. 函数名相同,都为funDemo01;
      // 3. 参数不同,第2个funDemo01函数有了一个整型参数i。
      void funDemo01(int i) {
        System.out.println("有参数i的funDemo01函数,i的值是" + i);
      }
    }
    
    1. 新建一个名称为Demo02.java的java源文件。

    Demo02类演示了重载方法的调用。

    class Demo02 {
      public static void main(String[] args) {
        Demo01 demo01 = new Demo01();
        demo01.funDemo01();
        demo01.funDemo01(100);
      }
    }
    

    构造函数的作用

    用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中;
    一个类可以有多个构造函数 ,可根据其参数个数的不同或参数类型的不同来区分它们,即构造函数的重载。

    特征:

    • 没有返回值类型的定义;
    • 构造函数的名字必须和类的名字完全保持相同;

    例子:(请动手)

    1. 新建一个名称为Person.java的java源文件。
    class Person {
      // 构造函数
      Person(){
      }
    
      // 第二个构造函数,利用的原理是方法的重载
      Person(String n, int a){
        name = n;
        age = a;
      }
    
      String name;
      int age;
    
    }
    
    1. 新建一个名称为Demo03.java的java源文件。
    class Demo03 {
      public static void main(String[] args) {
    
        // 调用的是无参的构造方法
        Person p1 = new Person();
        p1.name = "zhang3";
        p1.age = 15;
    
        System.out.println("p1的name是:" + p1.name + ",age是:" + p1.age);
    
        // 调用的是有参的构造方法,哪个写法更加简单呢?
        Person p2 = new Person("li4", 18);
        System.out.println("p12的name是:" + p2.name + ",age是:" + p2.age);
      }
    }
    

    相关文章

      网友评论

      本文标题:课程4.3之面向对象基础4

      本文链接:https://www.haomeiwen.com/subject/cmeuqttx.html