NullReferenceException: Object reference not set to an instance of an object

Main file: PlayerWalk.cs

using System.Collections;

using System.Collections.Generic;

using UnityEngine;

public class PlayerWalk : MonoBehaviour

{

[SerializeField]
private float moveSpeed = 6f, jumpForce = 10f;

private Rigidbody2D myBody;

private Vector3 tempPos;

private PlayerAnimation playerAnim;

private void Awake()
{
    myBody = GetComponent<Rigidbody2D>();
    playerAnim = GetComponent<PlayerAnimation>();
}

private void Update()
{
    //HandleMovementWithTransform();

    HandlePlayerAnimations();
}

private void FixedUpdate()
{
    HandleMovementWithRigidBody();
}

void HandleMovementWithTransform()
{

    tempPos = transform.position;
    
    if (Input.GetKey(KeyCode.A) || Input.GetKey(KeyCode.LeftArrow))
    {
        tempPos.x -= moveSpeed * Time.deltaTime;
    }

    if (Input.GetKey(KeyCode.D) || Input.GetKey(KeyCode.RightArrow))
    {
        tempPos.x += moveSpeed * Time.deltaTime;
    }

    transform.position = tempPos;

}

void HandleMovementWithRigidBody()
{

    if (Input.GetKey(KeyCode.A) || Input.GetKey(KeyCode.LeftArrow))
    {

        myBody.velocity = new Vector2(-moveSpeed, myBody.velocity.y);

        //myBody.AddForce(new Vector2(-moveSpeed, 0f), ForceMode2D.Impulse);
        
    }
    else if (Input.GetKey(KeyCode.D) || Input.GetKey(KeyCode.RightArrow))
    {

        myBody.velocity = new Vector2(moveSpeed, myBody.velocity.y);

        //myBody.AddForce(new Vector2(moveSpeed, 0f), ForceMode2D.Impulse);
        
    }
    else
        myBody.velocity = new Vector2(0f, myBody.velocity.y);
    

}

void HandlePlayerAnimations()
{
    playerAnim.Play_WalkAnimation((int)Mathf.Abs(myBody.velocity.x));
}

}

Animation file: PlayerAnimation.cs

using System.Collections;

using System.Collections.Generic;

using UnityEngine;

public class PlayerAnimation : MonoBehaviour
{

private Animator anim;

private SpriteRenderer spriteRenderer;

private void Awake()
{
    anim = GetComponent<Animator>();
    spriteRenderer = GetComponent<SpriteRenderer>();
}

public void Play_WalkAnimation(int walk)
{
    anim.SetInteger(TagManager.WALK_ANIMATION_PARAMETER, walk);
}

}

I am getting the error:
NullReferenceException: Object reference not set to an instance of an object
PlayerWalk.HandlePlayerAnimations () (at Assets/Scripts/Player Scripts/PlayerWalk.cs:81)
PlayerWalk.Update () (at Assets/Scripts/Player Scripts/PlayerWalk.cs:27)

I have created another script and calling that inside the awake method and still getting the error. Why it’s so?

Please help me out with the error.

Thanks

PlayerAnimation is a script. So you cannot use get component. You need to create an object for the class to reference it.