title: OOP Terminology: class, attribute, property, field, data member
body: <p>I am starting studying OOP and I want to learn what constitutes a class. I am a little confused at how loosely some core elements are being used and thus adding to my confusion.</p>
  
  <p>I have looked at the C++ class, the java class and I want to know enough to write my own pseudo class to help me understand.</p>
  
  <p>For instance in <a href="http://en.wikipedia.org/wiki/Class_variable" rel="noreferrer">this article</a> I read this (.. class attribute (or class property, field, or data member)</p>
  
  <p>I have seen rather well cut out questions that show that there is a difference between class property  and class field for instance <a href="https://stackoverflow.com/questions/295104/what-is-the-difference-between-a-field-and-a-property-in-c">What is the difference between a Field and a Property in C#?</a></p>
  
  <p>Depending on what language I am studying, is the definition of </p>
  
  <ul>
  <li>Property</li>
  <li>Fields</li>
  <li>Class variables</li>
  <li>Attributes</li>
  </ul>
  
  <p>different from language to language?</p>