How we can changing the implementation, JAVA Programming

Assignment Help:

How we can changing the Implementation ?

Suppose the Car class requires to be used in a simulation of New York City traffic in that each actual car on the street is represented through one Car object. That's a lot of cars. As currently written every car object occupies around 60 bytes of memory (depending mostly on the size of the license plate string. We can knock off eight bytes per car through using floats instead of doubles, but the interface can stay the similar:

public class Car {

private String licensePlate; // e.g. "New York A456 324"
private float speed; // kilometers per hour
private float maxSpeed; // kilometers per hour

public Car(String licensePlate, double maxSpeed) {

this.licensePlate = licensePlate;
this.speed = 0.0F;
if (maxSpeed >= 0.0) {
this.maxSpeed = (float) maxSpeed;
}
else {
maxSpeed = 0.0F;
}

}

// getter (accessor) methods
public String getLicensePlate() {
return this.licensePlate;
}

public double getSpeed() {
return this.speed;
}

public double getMaxSpeed() {
return this.maxSpeed;
}

// setter method for the license plate property
public void setLicensePlate(String licensePlate) {
this.licensePlate = licensePlate;
}

// accelerate to maximum speed
// put the pedal to the metal
public void floorIt() {
this.speed = this.maxSpeed;
}

public void accelerate(double deltaV) {

this.speed = this.speed + (float) deltaV;
if (this.speed > this.maxSpeed) {
this.speed = this.maxSpeed;
}
if (this.speed < 0.0) {
this.speed = 0.0F;
}
}
}
Since the interface is the similar, no other classes in which depend on this class requires to change or even be recompiled. We might save even more through using a custom LicensePlate class in which only permits one-byte ASCII characters instead of two byte Unicode characters.


Related Discussions:- How we can changing the implementation

Explain preemptive scheduling and time slicing, In preemptive scheduling, t...

In preemptive scheduling, the highest priority task executes until it enters the waiting or dead states or a higher priority task comes into existence. In time slicing, a task i

Bluej, how to write a program to assign value of variable age and print if ...

how to write a program to assign value of variable age and print if person is major.

Explain jakarta struts framework, Jakarta Struts is open source execution o...

Jakarta Struts is open source execution of MVC (Model-View-Controller) pattern for the development of web based applications. Jakarta Struts is robust architecture and can be used

Explain about the dynamic java, Dynamic JAVA Class and type informatio...

Dynamic JAVA Class and type information is kept around at runtime. This allows runtime loading and inspection of code in a very flexible way.

Need android - ios pdf reader, Project Description: Our project consists...

Project Description: Our project consists of a plain application, both for iPad/iOS (Newsstand app) and Android 4.x which will download PDF magazines from the internet, after ha

Applet, how to create a face with nose using applet

how to create a face with nose using applet

A new dynamic website, A NEW Dynamic Website I have the subsequent requi...

A NEW Dynamic Website I have the subsequent requirement which needs to be designed in 30 days (Max). 1) Construct a website which is a dynamic, means allow me to change conte

Give an example for passing arguments to methods, Give an example for Passi...

Give an example for Passing Arguments to Methods ? class Car { String licensePlate = ""; // e.g. "New York 543 A23" double speed = 0.0; // in kilometers per h

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd