Call
A call is the invocation of a function or method.
Related concepts: FunctionMethodReturn
Closest Wikipedia entry: Subroutine — In computer programming, a function (also procedure, method, subroutine, routine, or subprogram) is a callable unit of software logic that has a well-defined interface and behavior and can be invoked multiple times. Callable units provide a powerful programming tool. The primary purpose is to allow for the decomposition of a large and/or complicated problem into chunks that have relatively low cognitive load and to assign the chunks meaningful names (unless they are anonymous).
Misconceptions about Call52 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 classInlineCallInExpressionTree
The expression tree of an expression involving a call inlines the call's computation of the returned valueInterproceduralEdge
In an intra-procedural control-flow graph, method call nodes point to the called methodNoCallOnStringLiteral
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 StringObjectLabeledWithConstructorSignature
In stack and heap diagrams, an object on the heap is labeled like a stack frame of a constructor callObjectsMustBeNamed
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 have no continuationReturnCall
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 typeStaticFrameInGlobals
Stack frame of static method calls lives in the global memory areaSuperAlwaysHasParentheses
To call a method on a superclass, parentheses are needed after the keyword superSuperNotFirstStatement
super() can be called anywhere in the constructor of a subclassThisChildInCallExpression
Instance method or constructor call nodes in expression trees have a child labeled "this"