Saporificpug

Saporificpug t1_jecyc59 wrote

The chemistry defines the voltage of the battery. Lithium operates anywhere from 3V to 4.45V or 1.5V.

The biggest challenge between chemistries is going to be energy density compared to other types, cost and sometimes weight and size.

Lithium is becoming battery leader in terms of chemistry, because it has a higher energy density, lower weight and can come in many form factors. The biggest downside is cost.

Alkaline has the benefit that it's low cost, decent for most cases in terms of size & weight ratios. NiCDs are heavier.

Energizer makes lithium AA/AAA that are 1.5V. The biggest benefit over alkaline is that those lithium batteries have longer runtime (also work better in cold). However, the lithium batteries are more expensive and you could probably buy more alkalines for the same cost.

It's worth mentioning that non-rechargables typically hold charge longer than their rechargable counterparts, the benefit of rechargable is that you shouldn't have to recycle rechargables away after it discharges. This means on one charge cycle, you'll have to charge the rechargable before the non-rechargable. Non-rechargables are quick to replace but you have to buy more over time.

With this in consideration cheap electronics typically come with alkalines AA/AAA because it's cost effective, provides the needed power and decent runtime and they don't care too much about you needing to replace the battery when it's discharged.

4

Saporificpug t1_jecs886 wrote

Lightning is basically static electricity between particles in clouds.

Normally the air/atmosphere is an insulator and doesn't allow current to flow. During a storm that produces lightning the voltage increases and starts to turn the air into plasma, which is conductive. Typically the biggest difference in charge is between the storm (-) and the ground (+), so the strike typically goes from the storm to the ground.

Thunder is the result of lightning. Basically it rapidly makes the air hotter and increases the pressure causing the air to expand quickly. The expansion of air is the sound of thunder.

1

Saporificpug t1_ja5nok5 wrote

They are both waves, but they are entirely different types of waves. Light is an electromagnetic wave, while sound is a mechanical wave.

One of the benefits of sound is that it requires a medium, such as the air to move around. When sound travels through the air and hits a wall, window or curtain, it causes the object it hits to also vibrate and disperse on the otherside.

Light however is mostly reflected off of solid objects. It's worth mentioning that while light doesn't go through walls some electromagnetic waves can. Think something like your internet wifi (typically radio waves), which is just a different frequency and wavelengths compared to visible light. Both are electromagnetic, however.

1

Saporificpug t1_ja00ub0 wrote

Technically nothing would happen. Some languages don't have the concept.

You can think of a program as a list (not a List class) of objects or methods.

For a small grocery list, it's just a list of a few items, you're probably just write them down on a single page with no separation. A small program would be okay with only using one or two classes, it's no big deal.

But say we're talking about multiple store chains in a corporation. You're going to list different stores and different positions in corporate. Each store is going to have their own employees listed, but most people outside of the store is going to be concerned with the store manager and assistant manager so their numbers will be listed for thise outside the store. Inside the store everyone should know about and interact with their coworkers.

Ecapsulation is kind of the same idea. You break code into different classes. Not every class should be concerned with every function or object of a different class, so some objects/methods are marked for different level access so only some or certain objects can interact with those.

One good use of ecapsulation, is imagine you have a method that you have some kind of input like age. A problem with using a public variable from a different class is that you can change the variable and you might not catch every error input like a negative number. By making it private and using a public method that changes it, it can only be changed by that method which can catch if the number is negative, or too high or between a range. This makes debugging easier because the only way that variable could be wrong is if the logic in that setter method is wrong.

1