首页 > 代码库 > java面向对象

java面向对象

java也属于面向对象编程   (面向对象的核心 : 找到合适的对象做合适事情。)

     面向对象的三大特征 : 封装,继承,多态。
      类,对象。对象 :真实存在的唯一的事物。面向对象编程(oop)思想力图

     使对计算机语言中的事物的描述和自然中的事物 尽可能保持一致。

  java中如何来找合适的对象:
        1.sun已经指定好的类,通过定制好的类创建对象, 需要认识这些类。
       2.自定义类 ,通过自定义类来创建对象。

    类中包含 :
        属性 ,方法。

类的定义格式 :

       class 类名 {            属性(成员变量) : 描述事物的公共的特点。   

       方法 : 描述事物的行为      (做什么事情)      }

    通过自定义的类来创建一个对象
        格式:
        类名  对象名(变量名) = new 类名();

      //访问属性 :
       对象.属性名
       //设置属性:
       对象.属性名 = 数据。
     
      //调用对象的方法:
      对象.方法名();

    属性 格式 : 数据类型 变量名

成员变量和局部变量额区别:

  定义的位置 :
   1.定义在类中,方法外。   2.局部变量是定义在方法中。

 作用上:
   1.成员变量是用来描述同一类事物(对象)的公共属性。
   2.局部变量就是提供一个变量给方法使用

生命周期 :
   1.成员变量随着对象的创建而创建,随着对象的消失而消失。(成员变量作用在整个范围中,如果需要在当前泪中使用成员变量,直接哪拿到变量名就可以使用)
   2.局部变量随着方法调用而创建,出了方法的作用域就消失

初始值来区分:
   1.成员变量,如果你没有赋值,它是有默认值的。
    int   默认是0
    float 默认是0.0f
    double  默认是 0.0
    boolean 默认 false
    char    默认 ‘ ‘
    String (引用类型)null;
   2.局部变量:
    局部变量是没有初始值的,必须初始化才能使用。

成员变量在当前类中是可以直接通过变量名来使用,如果变量名需要在其他类中使用,就需要创建对象

类和对象的关系:

类是对同一事物的抽象,对象实际存在的该类的各种实体,面向对编程的核心:找合适的对象来做

合适的事;

java中如何找到对象

           1sun自己定义好的类,必须知道这个类2自定义类,通过自定义类来创建对象

类的格式:

  class 类名{

属性(成员变量)描述对象的公共特性

买哦书对象的公共行为

 

}

 

如何通过类创建对象   类名对象名 = new 类名();

class Baby {      //属性 : 变量类型 变量名 = 值;   String name;   int  age;   String sex;   

  //方法

  // 修饰符 返回值类型  方法名(参数列表){}

  public void cry(){       System.out.println(name+"哭了");   }

3匿名对象

我们一般不会用匿名对象给属性赋值,无法获取属性值,匿名对象永远都不可能是一个对象

好处:书写简单

使用场景:如果一个对象需要调研一个方法中一次的时候,就可以使用匿名对象

可以作为实际参数在方法中调用

4构造方法

在java中类似于oc的初始化方法叫构造方法

OC中初始化构造方法特点:

可以在对象创建初始化属性值

初始化方法只能调用一次

构造方法的租用:给对象初始化,对象创建初始化属性值

如何来创建构造方法:格式   修饰符  类名 (参数列表){}

构造方法注意特点:方法名与类名保持一致;构造方法没有返回值;构造方法不是我们手动调用的,而是对象被创建的时候java虚拟机调用的;如果一个类我们没有给他定义构造方法,java虚拟机在编译的时候会给这个类默构造方法,添加一个无参构造方法;如果你自己定义构造方法,java虚拟机就不会在创建无参构造方法,这个时候就自己定义一个无参构造方法

5方法重载

在java中方法是可以重名的,我们把这种方法重名叫做方法的重载

  :1必须是方法名一样,才可以叫方法重载;任何方法都可以实现方法重载;保证参数列表的参数顺序或者个数不一样

构造方法中额可以在调用普通方法,在通过个一个类中方法的调用直接拿到方法名调用就饿可以了

构造代码块左用:给对象统一初始化   ;必须是写在成员变量的位置上;对象被创建出来时候就执行了,

 

代码块:构造代码块;局部代码块,写在方法中,也是以大括号来表示;静态代码块

构造代码块注意点:java中编译一个java源文件的时候,会把成员变量的声明放在类的最前面;成员变量的初始化都是在构造方法中执行;一旦经过java编译器后,那么代码块中的代码会被移动到构造函数中去;成员变量的显示初始化和构造代码块,按照当前的代码顺序来执行,谁在后面就显示谁

 

java面向对象