(FRONT) FRONT (2016)

Java OOP, idiotic C#

1. Dirty C# language.

C# is mot idiotic languages I'm faced in my life, because absolutely different core OOP conception mixed, for example in VB.NET there are:

What result of this (and other) idiotic ambiguous mixing? Result is very simple - C# can not converted to any first class languages in the world. This is not a unexpected result os mistake og fucking Microsoft company. This is policy of Microsoft to language with one way converting. Ypu already can convert VB.NET to C#, because VB.NET is strong language, but never converting C# to VB automatically (plus case insensitive prevent you doing that). So, this policy allow Microsoft to kill simple understandable language and create trash language, what allow MS increase indefinitely in program, increase various mistake, and as a result increase price of C# software comparing to VB.NET software and as a result increase price to support software on Microsoft platform, increase cost of ownership software on Microsoft platform, increase capitalisation and investment to Microsoft software, increase the value of company public shares and value of Microsoft stock.

In fact, fucking Microsoft company, try kill VB.NET and try to promote idiotic C# with only one goal - own financial advantage. This what all programmers in world must understand clearly abut Microsoft and C#.


2. Dirty C# operator ":"

And firstly about dirty C# operator ":"

Clear Separation Java takes a much more explicit and less ambiguous approach to distinguishing between inheritance and interface implementation:

3. C# OOP vs Java OOP.

Similarity:


Differences:

4. @Override and other Attributes in Java

In Java, the @Override annotation is a compiler directive that indicates that a method is intended to override a method from a superclass. It's a way to ensure that you're intentionally overriding a method and not accidentally creating a new one with the same name.

Key Features of @Override:


   1:      class Animal {
   2:          public void makeSound() {
   3:              System.out.println("Generic animal sound");
   4:          }
   5:      }
   6:   
   7:      class Dog extends Animal {
   8:          @Override
   9:          public void makeSound() {
  10:              System.out.println("Woof!");
  11:          }
  12:      }
  13:   
  14:      public class Main {
  15:          public static void main(String[] args) {
  16:              Dog myDog = new Dog();
  17:              myDog.makeSound(); // Output: Woof!
  18:          }
  19:      }

In this example, the Dog class overrides the makeSound() method from the Animal superclass. The @Override annotation ensures that the method signature matches the superclass method.


Other Attributes in Java

Besides @Override, Java offers other attributes that are crucial for OOP:


Similar Attributes in C#


Similar Attributes in JavaScript


Comparison:

5. JavaScript vs. Java

Key Differences:

6. C# vs. Java

Key Differences:


Summary, Java

7. Interfaces

Java and C#: Both Java and C# are statically-typed languages with a strong emphasis on compile-time type checking. Interfaces in these languages are primarily about defining contracts that classes must adhere to.

JavaScript: JavaScript is dynamically-typed, meaning type checking happens at runtime. Interfaces in JavaScript are more about duck typing (if it walks like a duck and quacks like a duck, it's a duck) and less about strict contracts.


Interface Definition Syntax:


Interface Implementation:



4. Interface Differences :




Java context:



Comments ( )
<00>  <01>  <02>  <03>  <04>  <05>  <06>  <07>  <08>  <09>  <10>  <11>  <12>  <13>  <14>  <15>  <16>  <17>  <18>  <19>  <20>  <21>  <22>  <23>  <24>  <25
Link to this page: http://www.vb-net.com/Java/Index03.htm
<TAGS>  <ARTICLES>  <FRONT>  <CORE>  <MVC>  <ASP>  <NET>  <DATA>  <TASK>  <XML>  <KIOSK>  <NOTES>  <SQL>  <LINUX>  <MONO>  <FREEWARE>  <DOCS> <TRAVELS> <FLOWERS> <RESUME> < THANKS ME>