Today I just want to share with you some java basics mainly about access and non access modifiers.

Naming Conventions:
1.Class name should be noun.
2.Interfaces should be adjectives.
3.Methods should be verb-noun.
4.Constants should be uppercase with underscores and static final.
5.JavaBeans should use the camelCase naming convention. set, get, is, add and remove..
1.addMyListener(MyListener m).
2.removeMyListener(MyListener m).

1.Identifiers must start with a letter, a currency character, or a connecting character such as the underscore. Identifiers cannot start with a number.
2.After the first character, identifiers can contain any combination of letters, currency characters, connecting characters, or numbers.
3.There is no limit to the number of characters an identifier can contain, Identifiers are case sensitive.
Access modifiers: public, protected and private.
No access modifiers: strictfp, final and abstract.
1-Class only public or default.
2-Public class visible to all java classes in all packages.
3-Final classes can't be sub classed.
4-If class contains at least abstract method then the class should be marked as abstract.
5-Can't mark class or method as abstract final.
6-Class implements interfaces then all interfaces methods must be implemented and must be public.
7-Interfaces can have only abstract methods.
8-All interface methods are implicitly public and abstract.
9-All interface variables must be public static final explicitly declared or by default implicitly.
10-Interface methods mustn't be static.
11-Can't mark interface method final or strictfp or native.
12-Interface extends interfaces only, can extend more than one interface.
13-Abstract and final can't be used together.

Default Access (Package only): access only form same package.
Protected (Package+Kids): same as default with only one difference (any class extends class can access protected members even if not in the same package).
First concrete subclass must implement all abstract methods of the super classes.
Can't mark method as abstract and final, private abstract or abstract static.
Synchronized: applied only to methods or code blocks.
Native: applied only to methods (native void m();) without method body like the abstract method.
Strictfp: applied only to classes or methods but not variables.
Transient and Volatile: applied only to variables.
Transient: tell JVM to skip variable when object serialization.
Volatile: tell JVM any thread access this variable must be reconcile its own private copy of variable with the master copy on memory.
Can't mark constructor as static or final or abstract and can't be prefixed with void (will be normal method).
Left most bit represent the variable sign, 1 negative and o positive.
Local variables are always on stack not in the heap.
Enums outside class can't be private or protected, it can be default or public (require separate file), can't be declared inside methods and can end with semicolon or not.
No final object in java but only final reference.

Visibility matrix:
1-From same class: public, protected, default and private.
2-From any class in same package: public, protected and default.
3-From subclass in same package: public, protected and default.
4-From subclass outside same package: public and protected.
5-From any non subclass class outside the package: public only.


If you are very passionate about running your own business, have you ever stopped to ask yourself those simple -yet hard to answer- questions. Why do I have a business? Why am I making all this efforts to run the business? Is it worth? Why do I work?
These simple questions make you think about the real reason behind running a business, your purpose of existence. We all love/want to have a business but have you ever thought about how you are going to make your business last?

Your purpose of existence

Definitely you thought about big names that lasted for many years (100+) and asked yourself, how did they do that, how did they last for such long time, does it depend on a person? do they have a leader between them that made them make all this success? But how their success lasted for 100+ years. The answer is very simple, “Purpose of existence and core values”, they all have this in common.
If you want to build a business that last for a long time, you have to think about your purpose of existence, don’t think about the money or the resources, think about the value that you have and believe in and want to share with the world, and this is the very first step in your success. When your purpose of existence is clear in your mind and prominent in your life, you will find others having the same purpose of existence and they will be very happy to join you in this journey.

Your tribe

If you are living for a value and truly living your purpose of existence, it is critical to choose very wisely your team, because you don’t want to have a team who is loyal to you or who believes in you (only) because if you change they will change. Your focus should be on a team who TRULY believe in the company purpose of existence and they are willing to do anything to live its values and to share it with the world. If you and your team are aligned to the purpose of existence all the doors are open for innovation because they don’t depend on you as their leader to initiate any action, they are all leaders, and they all want the same thing you want so they will do anything to achieve it.

Mohammed Abdel Sattar

No. It is the two visual fields (one from each eye) that, when combined in the visual cortex of the brain, produce our sense of depth and speed. Depth information can be produced by the brain using mono ocular cues acquired by just one eye, but in this case the feeling of depth is always incomplete. If you close one of your eyes you will not be able to judge depth correctly.
In Arkdev we take this scientific standpoint and apply it. As a newly hired Arkdevian I found that my relation with my team leader is what makes the vision of the project complete. I am his second eye, he is my second eye. For sure there are differences in the technical level (strength of each eye), but I am always encouraged to participate with what I know, and yes my little contribution completes the vision.

A great thing in the culture of Arkdevians is “Sharing”. It is not about “me”... Rather it is about “We”. We work together, we learn from each other’s, we do mistakes and we succeed together!  This is expressed clearly in our third core value: “Knowledge sharing is my way to grow and empower myself and others. Being one team, I happily share what I know with all Arkdevians.