Call
A call is the invocation of a function or method.
Related concepts: FunctionMethodReturn
Closest Wikipedia entry: Subroutine
Misconceptions about Call47 documented Misconceptions
Check YourselfBaseCaseNotNeeded
Recursive computations do not necessarily need a base caseBaseCaseSelfRecursive
The base case of a structural recursion consists of a recursive self-callCallNotStaticallyChecked
A method invocation on a reference of a type that does not have that method won't compileCallOnPrimitive
One can invoke a method on primitive valuesCallRequiresVariable
One needs a variable to invoke a methodCallWithoutFrame
A method invocation does not necessarily allocate a stack frameCallerFrameContainsCalleeFormal
Stack frame of caller includes variables for callee's formal parametersCannotChainMemberAccesses
Member accesses cannot be chained togetherCannotChainMemberToConstructor
Method calls or field accesses cannot be chained to a constructor invocationChainedMethodsNotCalledFromOutside
Chained methods are all called on the object at the beginning of the chainConstructorAllocates
The constructor allocates the objectConstructorReturnsObject
Constructors need to return objectsConstructorWithoutNew
One can write the constructor name, without new, to instantiate a classDeferredReturn
A return statement in the middle of a method doesn't return immediatelyFrameIsClassInstance
A stack frame is the same as an instance of a classNoCallOnStringLiteral
One cannot invoke methods on String literalsNoInsideMethodCallInConstructor
It is foirbidden to call other methods on the same object while inside its constructorNoStringToString
One cannot invoke toString() on a StringObjectsMustBeNamed
A variable is needed to instantiate an objectOutsideInMethodNesting
Nested method calls are invoked outside inParenthesesOnlyIfArgument
() are optional for method calls without argumentsRecursiveCallSiteNoReturn
Tail-recursive call sites of non-void methods need no return statementReturnCall
Return statements need () around the return valueReturnUnwindsMultipleFrames
A return statement can unwind multiple call stack framesRightToLeftChaining
Chained accesses are invoked from right to leftStackTraceIsCallHistory
A stack trace is the sequence of previously called methodsStaticCallPolymorphic
A static method call is dispatched polymorphically at runtime based on the argument typesStaticDispatch
The method to be called is determined by the static typeSuperAlwaysHasParentheses
To call a method on a superclass, parentheses are needed after the keyword superSuperNotFirstStatement
super() can be called anywhere in the constructor of a subclass