17.1 a little explaination about this code

class Machine
  @@users = {}
    def initialize(username, password)
    @username = username
    @password = password
    @@users[username] = password
    @files = {}
    def create(filename)
    time = Time.now
    @files[filename] = time
    puts "#{filename} was created by #{@username} at #{time}."
    def Machine.get_users

i want to ask about @files hash here
you notice that @@users is in the class body while @files is in the method body
+ why @@users been put in the class body unlike @files though they do the same job?!
+ is this different positioning just a matter of preference?
+ is @@users & @files here intended to do different jobs?

p.s i know about class variables,instance variables & such


Maybe reading this article
will give you a better feel...