您的位置:首页 > 职场人生

黑马程序员_面向对象

2013-03-20 16:33 183 查看
-------
android培训、java培训、期待与您交流!
1.构造函数: 

      构造函数的作用:用于对象的初始化

      构造函数的特点:构造函数必须与类名相同,没有返回值类型;构造函数一建立就运行,给对象初始化;一个对象建立后,构造函数只运行一次(而一般函数可以被多次调用)

      注意:当一个类没有定义构造函数时,系统会默认给定义个空的构造函数。构造函数和一般函数一样,也可以进行重载

如:

class Person

{

       String name;

       int age;

  //下面定义的就是一个带参数的构造函数

       Person(String name)

      {

            this.name=name;

      }

 //重载的构造函数

      Person(String name,int age)

    {

         this.name=name;

        this.age=age;

    }

}

2.static修饰符

     static是一个修饰符,用于修饰成员(成员变量和成员函数),当成员被static修饰后,既可以被对象调用,又可以被类直接调用,如

类名.静态成员,用static修饰的方法是静态方法,静态方法中只能调用静态数据,不能直接调用非静态数据,也不能使用this和super关键字

   staic修饰的变量是类变量,不用static修饰的变量为实例变量,类变量随着类的加载而存在于方法区中,随着类的消失而消失;实例变量

随着对象的建立存在于堆内存中,随着对象的消失而消失。

  静态代码块 static{........},随着类的加载而执行,只执行一次,用于给类进行初始化,并优先于主函数运行

3.抽象类 abstract

    当多个类中出现相同的功能,但是功能主体不同,这个时候可以进行向上抽取,这个时候只抽取功能定义,不抽取功能主体

    抽象类的特点:抽象方法一定存在于抽象类中;抽象类不能用new创建对象,因为抽象方法没有意思;抽象类中的方法要被使用,必须在

子类中覆写所有的抽象方法,建立子类对象进行调用,如果子类只是实现了抽象类的一部分抽象方法,那么这个子类还是一个抽象类,还是不

能够建立对象,抽象类不可以实例化。

 abstract class Person

{

       abstract  void eat();

 }

4.接口 interface

     接口中的成员都有固定的修饰符,常量:public static final,方法:public abstract,接口中的成员的修饰符都是public,接口不能被实例化,因为接口中的方法都是抽象方法,这些方法必须在子类中进行实现,对子类进行实例化,然后调用这些方法,一个子类可以实现多个接口

     接口的特点:接口是对外暴漏的规则;接口是程序的功能扩展;接口可以用来多实现;类与接口之间是实现的关系,而且类可以在继承一个类的同时实现多个接口;接口与接口之间可以有继承关系;基本功能定义在抽象类中,扩展功能定义在接口中

Interface  Person

{

     abstract void eat();

}

class Student implements Person

{

       public void eat()//注意:这里的修饰符必须是public,因为接口中的方法的修饰符默认都是public,子类中实现接口中的方法时,修饰符的作用范围必须要大于接口中方法修饰符的作用范围

      {

            System.out.println("吃饭");

      }

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: