编程知识 cdmana.com

[Java] Understanding Classes and Objects

活动地址:CSDN21天学习挑战赛
在这里插入图片描述博客主页: XIN-XIANG荣
系列专栏:【Java SE】
一句短话: 难在坚持,贵在坚持,成在坚持!

一. Object-oriented introduction and understanding

1. 面向对象的介绍

Java是一门纯面向对象的语言(Object Oriented Program,继承OOP),在面向对象的世界里,一切皆为对象.面向对象是解决问题的一种思想,主要依靠对象之间的交互完成一件事情.用面向对象的思想来涉及程序,更符合人们对事物的认知,对于大型程序的设计、扩展以及维护都非常友好.

2. 面向对象的理解

Understand object orientation using the example of laundry in life:

  1. 传统的洗衣服过程

during the traditional laundry process,The following steps are required,Every aspect of laundry needs to be hands-on,That is to say, the laundry process needs to be done by ourselves;And this is process-oriented,

img

而且不同衣服洗的方式,时间长度,拧干方式都不同,处理起来就比较麻烦;如果将来要洗鞋子,那就是另一种放方式;Let's talk about writing code,If you write code in this way,将来扩展或者维护起来会比较麻烦.

  1. Modern laundry process

In the process of modern laundry,Clothes can be washed in the washing machine,Man puts clothes and laundry detergent into washing machine,启动开关即可;这里就是以面向对象方式来进行处理,Stop focusing on the laundry process ;具体洗衣机是怎么来洗衣服,如何来甩干的,我们不用去关心 .

img
注意:面向过程和面相对象并不是一门语言,而是解决问题的方法,没有那个好坏之分,都有其专门的应用场景.

二. 类的定义和使用

1. 类是用来干什么的

面相对象程序设计关注的是对象,而对象是现实生活中的实体,比如:洗衣机.但是洗衣机计算机并不认识,需要开发人员告诉给计算机什么是洗衣机.
imgIt is on the left side of the picture above对洗衣机简单的描述,该过程称为对洗衣机对象(实体)进行抽象(对一个复杂事物的重新认知),但是这些简化的抽象结果计算机也不能识别,开发人员可以采用某种面相对象的编程语言来进行描述,比如:Java、C++语言等;

类是用来对一个实体( 对象)来进行描述的,主要描述该实体(对象)具有哪些属性(外观尺寸等),哪些功能(用来干啥),描述完成后计算机就可以识别了.

2. 类的定义

The following is an example of defining a washing machine:

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

类中包含的内容称为类的成员;属性(字段)主要是用来描述类的,称之为类的成员属性或者类成员变量;行为(方法)主要说明类具有哪些功能,称为类的成员方法.

采用Java语言将洗衣机类在计算机中定义完成,经过javac编译之后形成.class文件,在JVM的基础上计算机就可以识别了

class WashMachine{
    
    //属性(字段)-》成员变量
    public String brand; // brand of washing machine
    public String type; // 型号
    public double weight; // 重量
    public double lenght; // 长
    public double weidth; // 宽
    public double height; // 高
    public String color; // 颜色
    
    
    //行为(方法)-》成员方法
    public void WashClothes(){
     // 洗衣服
        System.out.println("洗衣功能");
    }
    public void dryClothes(){
     // 脱水
        System.out.println("脱水功能");
    }
    public void SetTime(){
     // 定时
        System.out.println("定时功能");
    }
}

注意事项:

  1. 一个文件中可以有多个类,But generally only one class is defined in a file
  2. main方法所在的类一般要使用public修饰(注意:Eclipse默认会在public修饰的类中找main方法)
  3. public修饰的类必须要和文件名相同

3. 类的实例化

定义了一个类,就相当于在计算机中定义了一种新的类型,与int,double类似,只不过int和double是java语言自带的内置类型,而类是用户自定义了一个新的类型 .

用类类型创建对象的过程,称为类的实例化,在java中采用new关键字,配合类名来实例化对象.

Define a dog class and instantiate it:

class Dog {
    
    //属性(字段)-》成员变量
    public String name;//狗的姓名
    public String color;//狗的颜色

    //行为(方法)-》成员方法
    public void barks() {
    
        System.out.println(name+"汪汪叫");
    }
    public void wag() {
    
        System.out.println(name+"摇尾巴");
    }
}

public class Test {
    
    public static void main(String[] args) {
    
        Dog dog1 = new Dog();//实例化(创建对象)
        //使用 . 访问对象成员
        dog1.name = "小金";
        dog1.color = "金色";
        dog1.barks();
        dog1.wag();

        Dog dog2 = new Dog();
        dog2.name = "小哈";
        dog2.color = "灰白";
        dog2.barks();
        dog2.wag();
    }
}

执行结果:

img
注意事项:

  • new 关键字用于创建一个对象的实例.
  • 使用.来访问对象中的属性和方法.
  • 同一个类可以创建对个实例

三. 类和对象的说明

  1. 类只是一个模型一样的东西,用来对一个实体进行描述,限定了类有哪些成员.
  2. 类是一种自定义的类型,可以用来定义变量.
  3. 一个类可以实例化出多个对象,实例化出的对象占用实际的物理空间,存储类成员变量
  4. 做个比方;类实例化出对象就像现实中使用建筑设计图建造出房子,类就像是设计图,只设计出需要什么东西,但是并没有实体的建筑存在,同样类也只是一个设计,实例化出的对象才能实际存储数据,占用物理空间.

img

版权声明
本文为[XIN - XIANG rong]所创,转载请带上原文链接,感谢
https://cdmana.com/2022/218/202208060735230392.html

Scroll to Top