Operatoren:
Klar gibt es die in Smalltalk, jedoch nicht in der Art, wie sie in anderen Programmiersprachen vorkommen. Smalltalk behandelt alle Operatoren gleichwertig, nämlich als Methoden/Nachrichten, die an ein Objekt gesendet werden.
Nebenbei, Methoden sind in Smalltalk ebefalls Objekte.
Pointer:
Smalltalk ist dynamisch getypt (Java hingegen ist streng getypt, es muss also zu jeder Zeit der Typ einer Variable feststehen)
Der Typ einer Variable steht erst zur Laufzeit zur Verfügung. Grund dafür ist Folgender: Alle Variablen sind in Smalltalk als Speicheradressen, also Zeiger oder Pointer, realisisert. An dieser Speicheradresse, steht dann das Objekt. Damit kann erst der Typ des Objektes bestimmt werden, wenn die Adresse im Speicher ausgewertet wird. Da alles über Zeiger adressiert wird merkt dies
der Entwickler gar nicht mehr.
Virtuelle Methoden:
In Smalltalk werden alle Methoden prinzipiell erst zur Laufzeit gebunden.
Ich hoffe, dass man meinen Erklärungsversuch nachvollziehen kann. So Dinge, wie pointer oder casts kenne ich nur aus der Theorie, weil ich mich damit in Smalltalk nicht rumschlagen muss.
Wenn du mir ein Beispiel nennst kann ich dir genauer sagen, wie man dies in Smalltalk realisiert.