• Java 类与对象


    什么是对象

    对象就是看得见摸得着的东西,万物皆对象

    如何认识对象

    任何一个对象都有其特征和功能,我们也是通过对象的特征和功能认识对象

    什么是类

    我们把具有某些相同特征和功能的对象归纳为类,类是对对象的抽象和描述,不是具体指某个对象或东西,类是看不见摸不着的,比如人类、狗、男人等。

    类的作用

    类的作用是作为模板或图纸用于建造同一类对象,比如想要修建一栋大厦,不可能不画设计图,一上来就开干。

    如何定义类

    public class 类名 {
    	  属性(特征);
    	  方法(功能);
    }
    
    • public:是 Java 的一个访问修饰符,表明定义的类是公有类。访问修饰符的作用是用于控制类、属性和方法的访问权限,关于访问修饰符的更详细内容,后面我会单独讲解。这里需要记住的是,一个 Java 源文件只能包含一个公有类且文件名必须和公有类的类名相同

    • class:用于定义类的 Java 关键字

    • 类名:同变量名或方法名一样,必须是一个有效的标识符;类名按照 Java 编码规范,要求首字母大写

    类的属性和方法

    类的属性

    类的属性其实就是类描述对象的特征,在 Java 语言中也叫成员变量,之所以叫成员变量是因为它是类的一个成员,而且它本身也是一个变量。

    需要注意的是,类的成员变量与方法的局部变量是有区别的,方法的局部变量是在方法中声明的变量,而类的成员变量是类中方法外声明的变量,所以它们二者的作用范围和生命周期是不同的,使用是要注意差异。

    public  class Car {
           public String type =“sports car”;//车型   
           public int wheel = 16; //车轮  
           public int window = 6 ; //窗     
           public int door = 2; //门        
           public int engine = 1; //引擎    
    } 
    

    以上代码声明了 5 个属性或成员变量,而且分别进行了初始化;当然也可以不初始化,Java 语言会提供默认值。

    类的方法
    public class Car {
          public void start ( ) {
    					System.out.println(“发动汽车”);
           }
           public void refuel ( int volume ) {
              System.put.println(“ 汽车加油:”+ volume + “升”);
          }
    } 
    

    声明类的方法似于和我们之前声明的方法差不多,唯一不同的地方是少了一个 static 关键字。static 关键字到底是干嘛用的呢,这个还是要在等到后面详细讲解。

    构造器概念

    构造器(或构造方法)是类中用于实例化 Java 对象的一个特殊方法,该方法要求方法名必须和类名相同,且方法不具有任何返回类型

    public 类名 {
    	 ... 
    }
    

    默认构造器

    默认构造器就是没有参数的构造器,有显式和隐式之分

    • 显示默认构造器:指在类中声明的无参数构造器

    • 隐式默认构造器:指由 Java 言语自动提供的无参数构造器

    public class Car   {
       // 显式默认构造器
       public Car () {
           …
       }
    } 
    

    任何一个类必须要有一个构造器,否则就无法实例化对象,所以即使我们没有为类声明显示默认构造器,Java 言语也会提供隐式默认构造器。

    当我们为类声明了显示默认构造器,实例化对象时就会使用显示默认构造器,而不会使用隐式默认构造器。

    构造器重载

    在 Java 语言中,普通方法可以重载,构造器虽然是特殊方法,但也支持重载。

    我们先回顾一下,方法重载必须满足 4 个条件:

    • 方法名必须相同

    • 方法的返回值类型可以不同

    • 方法的参数列表必须不同(参数类型、个数或顺序必须有一个不同)

    • 方法的访问修饰符可以不同

    public class Car {
           public int door;
      …
      //显式构造器
      public car ( ) {
    	System.out.println(“这是显式默认构造器”);
      }
    
      //构造器重载
      public Car (int doorNum) {
    	door = doorNum;    
      }
    }
    

    以上代码重载构造器,为类添加了一个构造器。

    实例化对象

    实例化对象就是使用类去创建对象的过程,好比通过图纸修建大厦的过程。

    类名 对象名 = new 构造器;
    
    • new:是 Java 关键字,用于实例化对象(在内存堆区开辟空间保存对象)

    • 构造器:通过调用类的某个构造器才能实现实例化对象

    • 对象名:可以使用对象名来间接调用对象(保存对象的引用)

    Car car = new Car();    //调用显式默认构造器实例化对象
    Car car2 = new Car (2);//调用重载构造器实例化对象
    

    对象的使用

    Java 对象的使用就是访问(或调用)对象的属性和方法

    • 对象名.属性

    • 对象名.方法

    Car car = new Car();
    car.door;
    car.start();
    

    对象的销毁

    对象的销毁就是释放对象占用的内存空间,Java 语言 采用的是 GC 垃圾回收机制,它可以自动回收不再使用的对象,Java 程序员就只需要关注对象的实例化,而不用关注对象的销毁。

    GC 回收的对象已经释放掉其占用的内存空间,就不能再使用,否则就会导致运行时错误(或程序崩溃)。

    作者:Binge
    本文版权归作者和博客园共有,转载必须给出原文链接,并保留此段声明,否则保留追究法律责任的权利。
  • 相关阅读:
    django djangorestframework的简单使用
    html element截图,无需服务端即可下载的功能
    iOS 三种路由对比(TargetAction,Protocol, URL)
    技术网站集合
    【转】windows 没有hyperv 解决方法
    Vue.js基本使用
    yml 配置数据库的多数据源配置,@DS注解 ,dynamic
    vue 兼容ie 下载图片
    ie兼容 justifycontent: spaceevenly
    TrueNAS存储池简介
  • 原文地址:https://www.cnblogs.com/binbingg/p/13595693.html
Copyright © 2020-2023  润新知