面向对象-类和对象

来源:互联网 发布:seo的营销方法 编辑:程序博客网 时间:2024/05/01 06:39

面向对象-
 类和对象:类是对象的类型----通过属性和方法来描述对象。

   java中类的定义:java中是以类为基本单元
     class 类名{
      属性(对象特征),变量  

      行为(方法)
       返回值类型  方法名(参数列表){
        //具体行动
       }
     }
    创建对象的方式:通过new的方式。
     结构:
      new类的名字();
     需要定义一个该类型的变量来接收;
     类的类型  对象名 =  new 类的名字();

     赋值属性:
      变量名.属性名字=值;
     取值:
      数据类型 变量名=对象名.属性名;
     方法的调用():
      对象名.方法名();
  
   类中方法的定义和使用。
    java中方法通过参数分为:
     1.有参方法
      定义的格式:返回值类型 方法名(一个或,多个参数){
      
      }
     参数指的就是变量,作用于值的传递。
     2.无参方法
      定义的格式:返回值类型 方法名(){
    
    }
   java中用返回值类型来分类:
    1.无返回值类型:
     定义方式:void 空类型
     void 方法名(){
      方法体
     }
    2.有返回值类型:
     返回值类型(数据类型),java中的数据类型为:引用数据类型和基本数据类型、。
     格式:返回值类型不为void。返回值必须对应return。返回的类型必须和返回值类型一致。
     return关键字后面不允许有其他代码.只能在有返回值的方法中使用。
   
   方法的调用:
    同一个类中直接调用方法名:
       void a(int a){//a为有参方法
       }
       void b(){
        a(10)//在b中调用a方法,有参需要指定参数。
       }
    不同的类中需要调用对象,通过对象来调用方法
       calss A{
        void a{}
       }
       calss B{
        void b(){
          //在b中调用a。
          //创建一个对象来定义A类
         A 创建的对象名=new A;
         创建的对象名.name();
       
        }
       }
   方法定义的注意事项:
    没有返回值时不允许用return返回结果。
    方法是不允许嵌套使用的。
    逻辑代码不允许出现在方法外面。
    方法不能重名。
    方法格式相同参数列表不同称之为方法的重载。
   
 面向对象:核心(找到一个合适的对象做合适的事情。)
   面向对象(java)和面向过程(c语言)的区别:
    面向过程侧重于执行过程
    面向对象侧重于结果,通过对象来获取最终结果。
 Arrays 类的使用;
  1.Sort(int[]a) 排序
   例:intp[]arr={};
    Arrays.sort(arr);//排序
  2.toString(int[]a)将以个数组变成一个字符打印出来
   例:System.out.println(Arrays.sort(arr));//打印
  3.binarySearch(int[]a,int key)用二分法查找数据:找到后会将下标作为结果,没有找到则会反回负数。
   例:int result(定义一个int变量) = Arrays.binarySearch(arr.查找的数)
     System.out.println( result(定义后的结果) );
 成员变量和局部变量:
 
  成员变量: 类的属性,定义在类里面方法的外面
  成员变量的作用域:从定义的位置开到整个类中都可以使用。
  成员变量如果你没有赋值,会默认给你赋值:
     int,short,byte  默认值为0
     double,float     默认值为0.0
     boolean           默认值为 false
     String(引用数据类型)          默认为null
  成员变量可以在定义的时候就赋值。
  成员变量的作用:用来描述一个类的公有属性。
  成员变量的生命周期: 成员变量在对象被创建出来的时候才被创建,对象什么时候消失,成员变量就什么时候消失。成员变量的生命周期是和对象绑定在一起的。
  
  局部变量: 定义在方法的内部
  局部变量作用域:在他所在的方法中有用,从定义的位置开始,到方法的结束。
  局部变量是没有有默认值得,你要想使用局部变量就必须给局部变量赋值
  局部变量的作用: 在方法中定义一个变量给方法使用。
  局部变量的生命周期: 在方法被调用时创建出来,局部变量在出了作用域就消失

  局部变量的使用注意点:
     1.再同一个作用域中不允许出现两个同名局部变量。
     2.在不同方法中是可以出现同名的局部变量
     3.在同一个类中是允许成员变量和局部变量同名
   
  如果一个方法中出现了和成员变量同名的局部变量,优先是方法中的局部变量。采用的是就近原则。
 匿名对象:没有名字的对象
  格式:
   new 类名();
   匿名对象创建出来的时候没有被引用,所以只能被调用一次。
  作用: 只调用一次方法。
    可以作为实际参数来进行传递。 
  注意: 一般不用匿名对象来操作对象的属性。
    无法通过匿名对象来获取属性值。
 面向对象的三大特征:
  1.封装
   权限修饰符:可以将属性和行为隐藏起来只允许权限内的人访问。
    publc:公开的
    private:私有的
   使用步骤: 1.用private修饰符来修饰这个属性或者行为。将属性或者行为隐藏
      2.通过本类中提供的操作方法(set方法和get方法)
   好处:
    提高的了代码的安全性。
    简化代码
    便于维护代码
  2.继承
  3.多态

 构造方法定义的格式;(用于初始化对象)
    权限修饰符 类名(参数列表){
    }
    特点:
     1.方法名和类名是一致的。
     2.没有返回值。
    注意:
     1.构造方法不能自己调用,jvm在创建对象时调用。
     2.构造方法一个对象只能调用一次。
     3.没有定义构造方法,jvm会在编译时添加一个无参的构造方法
     4.类中已经定义了构造方法,jvm则不会创建无参方法。
     5.构造方法可以通过重载方式定义多种形式的构造方法。

0 0