Errata

Object-Oriented Programming with Visual Basic .NET

Errata for Object-Oriented Programming with Visual Basic .NET

Submit your own errata for this product.

The errata list is a list of errors and their corrections that were found after the product was released.

The following errata were submitted by our customers and have not yet been approved or disproved by the author or editor. They solely represent the opinion of the customer.

Color Key: Serious technical mistake Minor technical mistake Language or formatting error Typo Question Note Update

Version Location Description Submitted by Date submitted
Printed Page 10
Example 2-1 in Chapter 2

I am working off an online book so I do not have the exact page number.

The error (I believe) is in Chapter 2. Object Fundamentals 2.1 Creating and compiling
the component. The instructions tell you to save the file as "Hello.vb" and compile
Hello.vb into a .dll to be used with a client program created a bit later called
"hello-client." The client program imports the "greeting" namespace (inwhich the
"hello" class is defined), NOT the Hello namespace, so this example does not work
because the instruction in 2-1 are incorrect. I changed the file name in example 2-1
to "greeting.vb" (not hello.vb) and compiled the file into "greeting.dll" since it is
the greeting namespace that is being imported in the hello-client.exe program. The
example works fine now.

Anonymous   
Printed Page 33
Following the Console.WriteLine("Hello, world") top of the page

insert: Console.ReadLine()

Some of the examples early in the book have "Console.ReadLine()"
following one or more "Console.WriteLine(s)", for example:
Page 13, Example 2-2. "Hello, world" client
Page 27, Example 2-5. A phone in VB
Page 29, Example 2-6. Phone in .NET

Where the examples later in the book don't,
for example:
Page 33, Example 3-2. Member variables (continued)
Page 36, Example 3-3. Default properties (continued)
Page 50, Example 3-6. Goodbye, World! in the Finalize destructor
(It's needed here only to pause the console
long enough to see the result).

Anonymous   
Printed Page 34
throughout

Visual Basic .NET is not case sensitive, so when declaring properties, one can't use
the same name regardless of case for the Property and the Private member variable.
This is displayed throughout the book. Use a leading underscore for Private member
variable.

Anonymous   
Printed Page 34
last sentence in the continuation of the paragraph from previous page

Sentence reads, "To provide read-only access, the programmer would forgo the get_
method." Should read, "... forgo the set_method."

Anonymous   
Printed Page 45
following Console.WriteLine(B.Text) in Example 3-5

insert Console.ReadLine() following Console.WriteLine(B.Text)

else when running the example the window closes before the
reader is able to see the displayed text.

Anonymous   
Printed Page 66
Top of the page in Public Sub New...

Me.matches = maches should be Me.matches = matches

Anonymous   
Printed Page 83
Last sentence, last paragraph: "If a default constructor isn't explicitly....

I'm using:
Microsoft Development Environment 2002 v7.0.9466
Microsoft .NET Framework 1.0 v1.0.3705
to work the examples.

It appears as if the environment requires an
explicit definition of the default constructor.

If the default constructor is missing,
the DE complains with:
"First statement of this 'Sub New' must be a call
to 'MyBase.New' or 'MyClass.New' because the base
class 'PaymentClass.Payment' of 'CreditCardClass.CreditCard'
does not have an accessible 'Sub New' that can be
called with no arguments."

It would be very helpful if the next edition
had a chapter or two on working the examples
in the Development Environment.

Anonymous   
Printed Page 84
Top of the page: Console.WriteLine... acctNumber

Console.WriteLine("Payment.New: {0}", acctNumber)
should be
Console.WriteLine("Payment.New: {0}", account)

Anonymous   
Printed Page 209
Mid page: <FirstName>Peter Parker</FirstName>

Shouldn't: <FirstName>Peter Parker</FirstName>
actually be: <FirstName>Peter</FirstName>
given the previous code / result?

And

Shouldn't: <Employee FirstName="Peter Parker" .../>
actually be: <Employee FirstName="Peter" LastName="Parker"
as illustrated in the results at the top of the next page?

Anonymous   
Printed Page 211
Public Class Test; serializer.Serialize(writer, emp, xmlNamespace)

In serializer.Serialize(writer, emp, xmlNamespace)
shouldn't xmlNamespace be in Boldface?

Up to that point changes in the original example
were highlighted in bold, that particular change
wasn't... took me a few minutes to figure out
why it wouldn't work... then noticed the addition
of "xmlNamespace" to the serializer.Serialize(writer, emp)
statement.

Anonymous