From 6af52395013f05db15d85a22bab2ee0cc588f446 Mon Sep 17 00:00:00 2001 From: "Andrew M. Kuchling" Date: Sun, 4 Dec 2005 16:07:15 +0000 Subject: Add placeholder section on old and new-style classes --- Doc/ref/ref3.tex | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/Doc/ref/ref3.tex b/Doc/ref/ref3.tex index f53d425..9eba78f 100644 --- a/Doc/ref/ref3.tex +++ b/Doc/ref/ref3.tex @@ -1031,7 +1031,20 @@ by the built-in \function{classmethod()} constructor. \end{description} % Types +%========================================================================= +\section{New-style and classic classes} +Classes and instances come in two flavours: old-style or classic, and new-style. + +Old-style classes were the only flavour of class available before Python 2.1. While they supported multiple inheritance, the rules for resolving names were chosen for ease of implementation. These rules turn out to make multiple inheritance hard to use in certain situations. + +New-style classes were introduced in Python 2.1, and change the method resolution order to make multiple inheritance more usable. + +The plan is to eventually drop old-style classes, leaving only the semantics of new-style classes. This change will probably only be feasible in Python 3.0. + + + +%========================================================================= \section{Special method names\label{specialnames}} A class can implement certain operations that are invoked by special -- cgit v0.12