Java——类和对象超详细总结

文章目录

    • 类和对象
      • 1.类与对象的初步认识
      • 2.类和类的实例化
      • 3.类的成员
        • 3.1字段/属性/成员变量
        • 3.2方法
        • 3.3 static关键字
      • 4.封装
        • 4.1 private实现封装
        • 4.2 getter和setter方法
      • 5.构造方法
        • 5.1基本语法
        • 5.2 this关键字
      • 6.认识代码块
        • 6.1什么是代码块
        • 6.2普通代码块
        • 6.3构造代码块
        • 6.4静态代码块

类和对象

1.类与对象的初步认识

c语言是面向过程的,关注的是过程,分析出求解问题的步骤,通过函数调用逐步解决问题。

Java是基于面向对象的,关注的是对象,将一件事情拆分成不同的对象,靠对象之间的交互完成。

面向过程注重的是过程,就像我们用手洗衣服,我们需要先用盆接水,然后放入衣服,然后放入洗衣粉,然后用手搓,然后拧干晒起来。

面向对象注重的是对象,就像我们用洗衣机洗衣服,只要把衣服和洗衣服放入洗衣机,然后晒干就可以了,不用去管洗衣机是如何去洗衣服的。

2.类和类的实例化

类就是一类对象的统称。对象就是这一类具体化的一个实例。

类相当于一个模板,对象是由模板产生的样本。一个类,可以产生无数的对象。

声明一个类就是创建一个新的数据类型,而类在Java中属于引用类型,Java使用关键字class来声明类。我们来看以下简单的声明一个类。

基本语法

//创建类
class <class_name>{
   
    field;    //  成员属性
    method;    //  成员方法
}

//实例化对象
<class_name> <对象名> = new <class_name>();

class为定义类的关键字,ClassName为类的名字,{}中为类的主体。

类中的元素称为:成员属性。类中的函数称为:成员方法。

示例

class Person{
   
    public int age;    //  成员属性  实例变量
    public String name;
    public String sex;
    public void eat(){
       //成员方法
        System.out.println("吃饭!");
    }
    public void sleep(){
   
        System.out.println("睡觉!");
    }
}

注意事项

和之前写的方法不同,此处写的方法不带static关键字,我们我们会详细解释static是干什么的。

类的实例化

用类类型创建对象的过程,称为类的实例化

  1. 类只是一个模型一样的东西,限定了类有哪些成员。
  2. 一个类可以实例化出多个对象,实例化出的对象,占用实际的物理空间,存储类成员变量
class Person{
   
    public int age;    //  成员属性  实例变量
    public String name;
    public String sex;
    public void eat(){
       //成员方法
        System.out.println("吃饭!");
    }
    public void sleep(){
   
        System.out.println("睡觉!");
    }
}

public class DemoTest {
   
    public static void main(String[] args) {
   
        Person person = new Person();    //  通过new实例化对象
        Person.eat();    //  成员方法调用需要通过对象的引用调用
        Person.sleep();
        //  产生对象  实例化对象
        Person person2 = new Person();
        Person person3 = new Person();
    }
}

输出结果为:

吃饭!
睡觉!

注意事项

  1. new关键字用于创建一个对象的实例。

  2. 使用.来访问对象中的属性和方法。

  3. 同一个类可以创建多个实例。

3.类的成员

类的成员包含以下:字段、方法、代码块、内部类和接口等。

此处我们重点介绍前三个。

3.1字段/属性/成员变量

在类中,但是方法外部定义的变量。这样的变量我们称为"字段"或"属性"或"成员变量"(三种称呼都可以,一般不会严格区分),用于描述一个类中包含哪些数据。

class Person{
   
    public String name;    //  字段
    public int age;
}

public class TestDemo {
   
    public static void main(String[] args) {
   
        Person person=new Person();
        System.out.println(person.name);
        System.out.println(person.age);
    }
}

//执行结果
null
0

注意事项

  1. 使用.访问对象的字段。
  2. "访问"既包含读,也包含写。
  3. 对于一个对象的字段如果没有显式设置初始值,那么会被设置一个默认的初值。

默认值规则

对于各种数字类型,默认值为0。

对于boolean类型,默认值为false

对于引用类型(String,Array,以及自定制类),默认值为null.

Person person = null;
//这个引用不指向任何的对象

Person person = new Person();
Person person2=person;
//person2这个引用指向person这个引用所指向的对象

Person person = new Person

你可能感兴趣的:(java,开发语言,后端)