The term "class" is not a technical term with a universally definite meaning, but there are various established meanings in various contexts. In ZFC the established usage as Wojowu mentions in the comments is that a class is any definable collection, allowing parameters. However, it happens at times that one has a model $M$ of ZFC and subcollection of the sort you mention, which is not definable, but one wants to add it as an allowed class. An *amenable* class is one that can be added to the model while preserving certain parts of the theory. A weak form of amenability for a class $A$ should mean that $A\cap a$ is a set in $M$ for every $a\in M$. A stronger form would meant that $\langle M,\in,A\rangle$ satisfies the replacement axiom in the language allowing $A$. For example, class forcing often works this way over ZFC, since one often wants to augment the generic filter (which is not definable) to the model, and indeed, for tame class forcing the generic filter is amenable. This is how one can use class forcing to add an amenable class choice function or an amenable global well order to a model of ZFC. In second-order set theory $\text{ZFC}_2$, a class means any subcollection of the universe whatsoever. In GBC, one has specified explicitly the family of classes, and a class always means a member of that family. In finite set theory or arithmetic, the usage is similar to the above. In PA, one would often understand a class to mean a definable class, allowing parameters, but more generally, one considers the arithmetic version of amenability (called an "inductive" class), which means the model satisfies the induction scheme in the language with a predicate for the new class. In second-order arithmetic, used pervasively in reverse mathematics, one has an explicit family of allowed classes (but they are just called "the sets"), like the GBC case but for arithmetic. In $\text{RCA}_0$, for example, one has for sure only the computable sets as classes, but in $\text{ACA}_0$ one will have all arithmetically definable classes. In full second-order arithmetic, we allow arbitrary subsets of the model. We often don't use the word "class" to describe a subcollection of the universe that would destroy important parts of the theory in which we are interested. For example, we have cuts in models of PA, but nontrivial instances of this are never inductive, and we don't usually call them classes. In this sense, we don't tend to use the word "class" in the weirder examples you provide.